Stefan Fischerländer’s Blog One Blog Is Not Enough

Suns Erkenntnis: Nicht jeder mag Java

Die Java Virtual Machine (JVM), die Laufzeitumgebung von Suns Programmiersprache Java, ist weit verbreitet und unglaublich viele Entwickler schreiben seit Jahren Programme für diese Plattform. Doch bisher hat Sun den Wert seiner JVM wenig zu schätzen gewusst: Ist doch die JVM nicht einfach nur ein Hilfsmittel, um Javacode ablaufen zu lassen, sondern auch eine Art Betriebssystem; schließlich ist nach Dan Ingalls launiger Definition ein Betriebssystem “eine Ansammlung von Dingen, die nicht in eine Sprache passen”. Doch auch aus unternehmenspolitischer Sicht ist die JVM ein Betriebssystem. Hilft es doch dem Nutzer, Software auf vielfältigster Hardware laufen zu lassen.

Um so unverständlicher ist es, dass Sun bisher Java als die alleinige Sprache für seine Virtual Machine betrachtete. Verschenkt Sun doch damit Potenzial für weitere Software, die auf der JVM laufen könnte. Und Java ist als Sprache nun nicht wirklich der Weisheit letzter Schluss. Mein Lieblingsbug ist seit Herbst 2001 ungefixt und wurde inzwischen von Sun als “geschlossen, wird nicht behoben” deklariert: Java erkennt in UTF-8 kodierten Streams den optional möglichen Byte-Order-Marker (BOM) nicht, sondern liefert statt dessen eine Zeichenfolge wie FEFF. Sun wird diesen Bug nicht fixen, um damit vorhandenen Code, der um diesen Fehler herumprogrammiert, nicht fehlerhaft werden zu lassen. Schön zu beobachten, dass mehr als zwanzig Jahre nach Einführung des A20-Gate diese Art der Problemlösung in der IT-Industrie immer noch nicht ausgestorben ist.

Doch nun scheint sich bei Sun eine Wende, ja gar ein Paradigmenwechsel abzuzeichnen. Im Java Specification Request 292 beschreibt Sun den Plan, mit Java SE 7 einen neuen Bytecode einzuführen, “der die effektive und flexible Ausführung von Methodenaufrufen ohne statische Typinformationen unterstützt”. Hintergrund dieser Idee ist eine Erkenntnis, die Suns “Computational Theologist”, Gilad Bracha so beschreibt: “Uns ist aufgefallen, dass manche Leute lieber mit anderen Dingen als mit Java programmieren”.

Dabei gibt es bereits heute eine Reihe von Sprachen, die die JVM als Zielplattform nutzen:

Microsoft versteht sich im Übrigen wieder einmal besser auf die Vermarktung einer Computerplattform. Erklärtes Ziel für .NET ist, dass Programmierer die Sprache nutzen sollen, die sie bevorzugen; Hauptsache, das Programm läuft (ausschließlich) auf einem Microsoft-System. Deshalb vertreibt Microsoft für .NET nicht nur seine bisherigen Haussprachen C++, VisualBasic oder den Möchtegern-Java-Killer C#, sondern auch mit IronPython eine sogenannte Scriptsprache. Wenn’s um Marktanteile geht, schreckt Microsoft offenbar vor nichts zurück.

One Response to “Suns Erkenntnis: Nicht jeder mag Java”

  1. Steve Yegge oder: Der Java-Hasser schlägt wieder zu says

    […] Sammlung an Tech News nun ist ein besonderes Highlight - vor allem für all jene unter uns, die Java nicht so besonders mögen … (Ja, ich weiß, seine Liebe zu Perl ist bereits ebenfalls dramatisch […]

Leave a Reply