Ceylon (Programmiersprache)

aus Wikipedia, der freien Enzyklopädie
Wechseln zu: Navigation, Suche
Ceylon
Paradigmen: Objektorientierte Programmiersprache
Erscheinungsjahr: 2011
Entwickler: Gavin King, Red Hat
Aktuelle Version: 1.0.0  (12. November 2013)
Typisierung: stark, statisch
Beeinflusst von: Smalltalk, ML, Java
Betriebssystem: plattformunabhängig
Lizenz: GNU General Public License/Java Community Process
www.ceylon-lang.org

Ceylon ist eine Programmiersprache mit einem Software Development Kit (SDK), die auf Java basiert und für die Java Virtual Machine kompiliert wird.[1][2] Der Name ist gleichzeitig die ehemalige Bezeichnung der Insel Sri Lanka sowie des von dort stammenden Tees. Dies kann als Anspielung auf Java gesehen werden, das nach dem Arabica-Kaffee benannt wurde, der auf der Insel Java angebaut wird. Das Projekt will eine Sprache und ein SDK nach heutigen Designstandards entwickeln, wobei sowohl aus den richtigen als auch den falschen Entscheidungen des Java-Projekts gelernt werden soll.[3]

Wie der Java-Compiler erzeugt der Ceylon-Compiler Bytecode für die Java Virtual Machine. Initiiert wurde sie vom Red-Hat-Entwickler Gavin King, der durch seine Arbeit an Seam und dem Hibernate-Framework bekannt wurde. Syntaktisch lehnt sich Ceylon stark an Java an. Red Hat beschreibt die Sprache als gut lesbar und extrem typsicher. Bisher wurden der Compiler für die Kommandozeile, Sprachmodule, das Laufzeitsystem, eine Eclipse-basierte Entwicklungsumgebung und ein Dokumentationcompiler veröffentlicht. Gegenüber dem für Version 1.0 geplanten Sprachumfang fehlten Ende 2011 nummerierte Typen, nutzerdefinierte Anmerkungen und Reflection.

In diesem Artikel oder Abschnitt fehlen folgende wichtige Informationen: Sind diese Features in das Release eingeflossen? --Flominator 09:38, 23. Jan. 2012 (CET)

Du kannst Wikipedia helfen, indem du sie recherchierst und einfügst, aber kopiere bitte keine fremden Texte in diesen Artikel.

Grundkonzepte der Sprache[Bearbeiten]

Ceylon erbt weitestgehend die Syntax von Java. Hello World in Ceylon sieht so aus:

void hello() {
   print("Hello World!");
}

Überladen[Bearbeiten]

Ceylon unterstützt kein Überladen von Methoden, allerdings können optional Parameter mit einem Defaultwert belegt werden.

Funktionen höherer Ordnung[Bearbeiten]

Ceylon unterstützt Funktionen höherer Ordnung.

void repeat(Natural times, void perform()) {
    for (Natural n in 1..times) {
        perform();
    }
}

Compiler[Bearbeiten]

Der Ceylon-Compiler ist mehrschichtig aufgebaut und besteht aus einem Parser/Typechecker, der den Code validiert, und einem Backend, das mithilfe des openjdk-Compilers die Übersetzung in Java-Bytecode vornimmt. Sowohl Parser als auch Compiler sind dabei in Java geschrieben. Außerdem wird zurzeit an einem weiteren Backend gearbeitet, das es ermöglichen soll, Ceylon-Programme in Javascript zu übersetzen.[4]

Releases[Bearbeiten]

Am 20. Dezember 2011 wurde der erste von sechs Milestones für die Version 1.0 freigegeben. Milestone sechs ist am 23. September 2013 freigegeben worden und trägt die inoffizielle Version 0.6. Am 12. November 2013 schließlich erschien Version 1.0.0.[5] Informationen zu künftigen Releases finden sich in der offiziellen Roadmap des Projekts.

Testen[Bearbeiten]

Auf der von Red Hat betriebenen Seite try-ceylon.rhcloud.com kann man sich fertige Codebeispiele zu einzelnen Sprachfunktionen anschauen und auch selber kleine Programme schreiben, die mithilfe des Javascriptcompilers geparst und direkt im Browser ausgeführt werden.

Einzelnachweise[Bearbeiten]

  1. Java-Variante Ceylon erreicht ersten Meilenstein
  2. First official release of Ceylon
  3. Introducing the Ceylon Project – Gavin King presentation at QCon Beijing 2011
  4. Compiling Ceylon to JavaScript
  5. Offizieller Ceylon-Blog: „Ceylon 1.0.0 is now available“

Weblinks[Bearbeiten]