Microsofts Java verrechnet sich

Microsofts aktuelle Java-Implementierung versagt nicht nur bei Suns Kompatibilitätstest - sie rechnet auch falsch.

In Pocket speichern vorlesen Druckansicht
Lesezeit: 1 Min.

Microsofts aktuelle Java-Implementierung versagt nicht nur bei Suns Kompatibilitätstest - sie rechnet auch falsch. So gibt beispielsweise das untenstehende Programm, wenn es nach dem Übersetzen mit jview.exe ausgeführt wird, für die Fakultät von 5 den Wert 15 aus. Anscheinend führt der eingebaute Just In Time Compiler (JIT) falsche Optimierungen durch. Der JIT Compiler soll die Ausführung von Java-Programmen beschleunigen, indem er sie in maschinenspezifischen Code übersetzt. Er läßt sich nicht deaktivieren, so daß der Fehler nur durch Verwendung einer anderen Virtual Machine zu umgehen ist. Sowohl Netscapes als auch Suns Java-Implementierung liefern mit demselben Byte-Code das richtige Ergebnis 120.



[VERBATIM0]

(ju)