Login
Login-Name Passwort


 
Newsletter
Werbung

So, 14. Januar 2007, 17:49

Software::Entwicklung

Sun will quelloffenen Fortran-Nachfolger schaffen

Sun hat eine erste Testversion eines Interpreters für die neue Programmiersprache Fortress veröffentlicht, die ein Nachfolger von Fortran werden soll.

Fortran ist eine Programmiersprache, die in den 1950er-Jahren als eine der ersten Sprachen überhaupt entstand und bis heute in wissenschaftlicher und numerischer Software eingesetzt wird. Während die Sprache selbst als ausgesprochen hässlich und fehleranfällig gilt, besteht ihr großes Plus darin, dass eine Vielzahl von gut ausgetesteten Bibliotheken zur Verfügung steht und die Performance von Fortran-Code von keiner moderneren Sprache erreicht wird.

Moderne Architekturen mit mehreren Kernen pro CPU und Speicher, der je nach »Distanz« zur CPU unterschiedlich schnell angesprochen werden kann, zeigen jedoch auch Fortran die Grenzen auf. So hat bei Sun ein Team um Eric Allen das Design einer neuen Programmiersprache namens Fortress begonnen. Anfänglich wurde die Entwicklung von der DARPA gefördert. Mittlerweile liegt eine Alpha-Version der Sprachspezifikation vor. Ein soeben veröffentlichter Interpreter soll eine Referenz-Implementation von Fortress darstellen, implementiert jedoch noch nicht alle Funktionen. Der Interpreter läuft unter einer Java-VM und dürfte damit nicht die Performance einer späteren Compilerversion erreichen. Erhältlich ist der Interpreter, der verschiedene Java-Bibliotheken benötigt und unter einer BSD-Lizenz steht, derzeit nur über die Versionsverwaltung Subversion.

Während traditionelle Programmiersprachen sich sehr schwer damit tun, zu definieren, welche Codeteile parallel zu anderen ausgeführt werden können, geht Fortress den umgekehrten Weg. Es geht davon aus, dass alle Programmteile parallel ablaufen und auf die verfügbaren Prozessoren verteilt werden können. Der dafür benötigte Speicher soll automatisch möglichst nah am jeweiligen Prozessor angelegt werden. Nicht parallelisierbare Abschnitte müssen vom Programmierer explizit gekennzeichnet werden.

Fortress ist eine Programmiersprache, die vollständig auf die Bedürfnisse des Hochleistungsrechnens ausgelegt ist. Für allgemeine Aufgaben ist sie nicht geeignet, da Features wie beispielsweise dynamisches Linken als unnötig erachtet werden. Die Sprache verfügt über einen sehr kleinen Kern, der mit Bibliotheken erweitert wird. So werden bereits Arrays und andere grundlegende Datentypen nicht im Sprachkern, sondern in Bibliotheken definiert.

Werbung
Pro-Linux
Pro-Linux @Facebook
Neue Nachrichten
Werbung