venerdì, dicembre 09, 2005

Java StrictFP

Non so quanti conoscono il modificatore strictfp in java. E' un modificatore che può essere anteposto alla dichiarazione di metodi o di intere classi. Questa è la definizione che ne da il Java Language Specification Second Edition:
Within an FP-strict expression, all intermediate values must be elements of the float value set or the double value set, implying that the results of all FP-strict expressions must be those predicted by IEEE 754 arithmetic on operands represented using single and double formats.
Questo, all'atto pratico, comporta principalmente una cosa:
se si vuole che il codice che usa aritmentica floating point sia consistente su tutte le piattaforme, bisogna che sia strictFP.

(domanda retorica: come è quindi dichiarata la classe Math?? :-))