Freitag, 25. Mai 2012 |
Mit gleich zwei Java Language Days auf der kommenden JAX 2010 in Mainz wollen wir dem gesteigerten Interesse an der Sprachenvielfat auf der JVM gerecht werden. Newspeak-Erfinder Gilad Bracha ist einer der Speaker der Special Days und wird im Mai nicht nur seine selbstentworfene Sprache vorstellen. Im Vorfeld sprachen wir mit Gilad Bracha über die Zukunft von Java sowie die Stärken und Schwächen der Sprache.
JAXenter: In der heutigen Zeit der aufstrebenden Programmiersprachen auf der JVM fragen sich viele, was mit dem guten alten Java passieren wird. Auf der JAX 2010 halten Sie eine Session zum Thema Java Post Mortem. Was sind Ihrer Meinung nach die Stärken von Java?
Gilad Bracha: Als Sprache war Javas größter Beitrag das Bekanntmachen von Ideen, die schon in anderen Sprachen existierten. Dabei denke ich vor allem an Garbage Collection. Java bewies, dass GC bereit für den Mainstream war. Ein weiteres wichtiges Feature, das ich anführen würde, sind Interfaces. Das war eine Idee, die in vielen Systemen - auch bei meiner eigenen Arbeit mit Strongtalk – herumgespukt ist, aber nie verbreitet zum Einsatz kam. Zu guter Letzt würde ich noch Reflection erwähnen. Das war auch wieder nichts Neues, was von Java erfunden worden wäre, aber Java hat Reflection einem riesigen Publikum zugänglich gemacht.
Keiner dieser Punkte ist inzwischen nur noch Java zueigen. Java ist zum jetzigen Zeitpunkt von einer gewissen Trägheit geprägt, und ist eben die native Sprache für die JVM.
JAXenter: Und welche Schwachpunkte können jetzt zum Niedergang führen?
Gilad Bracha: Primitive Types, Static State, Constructors, das Fehlen von richtigen Closures und so weiter sowie eine bedrückende Starrheit. Und diese Starrheit ist nicht allein technisch, sie beeinflusst die Weiterentwicklung der Sprache. Die Prozesse sind zu bürokratisch und politisiert geworden. Die Weiterentwicklung durch ein Kommittee zu regeln, ist kein Weg, um inspirierende Ergebnisse zu erreichen. Wenn man ehrlich ist gilt: Alte Sprachen sterben nie, sie verschwinden langsam. Java wird Cobol 2.0. Es wird noch lange existieren, nur nicht mehr interessant oder aufregend sein.
JAXenter: Einer Ihrer Talks auf den Java Language Days der JAX wird die dynamische Sprache Newspeak behandeln – eine Sprache in der Tradition von Self und Smalltalk, die Modularität und Security unterstützt. Worum geht es bei Newspeak?
Gilad Bracha: Bei Newspeak geht es darum, das beste aus zwei Welten zu kombinieren. Wir wollen die Flexibilität und Einfachheit von reflektierenden dynamischen Sprachen mit der Modularität, Sicherheit und Interoperabilität verbinden – also Bereiche, in denen Sprachen immer schwach waren. Bei Newspeak geht es auch um Minimalismus, darum nämlich, einen großen Bereich mit einem starken, zusammengesetzten Design abzudecken und nichts aufzublähen. Das macht Sinn für kompakte, leichtgewichtige Systeme, die schnell zu erlernen und leicht zu entwickeln sind.
JAXenter: Im Newspeak-Blog schreiben Sie, dass es schwer ist, eine neue Programmiersprache zu rechtfertigen. Warum sollte man also auf Newspeak umsteigen?
Gilad Bracha: Die Welt der Programmierung verändert sich; besonders die Internet-Cloud ändert die Art, wie Anwendungen entwickelt werden. Der Web-Browser wird zum Haupt-Deployment-Überträger. Der Browser und Plattformen wie ChromeOS, iPhone/iPad und Android binden Anwendungen an Cloud-basierte Services. Die Möglichkeiten von Newspeak sollen es leichter machen, solche Services zu programmieren. Ich erwarte nicht, dass die Leute jetzt umsteigen – wir haben noch viel Arbeit zu erledigen. Im Moment empfehle ich die produktive Nutzung von Newspeak in traditionellen Windows-Clients, aber im Laufe dieses Jahres sind wir bereit für das Web-Deployment, denke ich. Das bedeutet das Schreiben eines eleganten Clients in einer schönen High-Level-Sprache, die Möglichkeit, ihn im Browser laufen zu lassen - und das alles von vornherein mit weniger Arbeitsaufwand als bei den existierenden Plattformen.
Gilad Bracha ist der Erfinder der Newspeak-Programmiersprache. Zuvor arbeitete er als Distinguished Engineer bei Cadence sowie als Computational Theologist und Distinguished Engineer bei Sun. Er ist Co-Autor der Java Language Specification und forscht auf dem Gebiet der objektorientierten Programmiersprachen. Bevor er zu Sun kam, arbeitete er an Strongtalk, dem Animorphic Smalltalk System. Er erhielt den B.Sc in Mathematik und Computerwissenschaften an der Ben-Gurion-Universität in Israel sowie den Ph.D. in Computerwissenschaften an der Universität von Utah.