Ceylon war eine objektorientierte, stark statisch typisierte Programmiersprache mit Fokus auf Unveränderlichkeit (Immutability), entwickelt von Gavin King — dem Erfinder von Hibernate — bei Red Hat. Sie wurde 2011 auf der QCon-Konferenz angekündigt und am 12. November 2013 in Version 1.0.0 veröffentlicht. Ceylon lief auf der JVM und konnte zusätzlich nach JavaScript kompiliert werden.

Besonderheiten

  • Ausdrucksstarkes Typsystem mit Union- und Intersection-Typen, Typ-Aliasen und fluenter, gut lesbarer Syntax.
  • Betonung von Unveränderlichkeit: viele Strukturen sind standardmäßig immutable, ähnlich wie bei Kotlin.
  • Eigenes Modulsystem mit Modul-Repositories und der Descriptor-Datei module.ceylon.
  • Als Eclipse-Projekt („Eclipse Ceylon“) gehostet; das Basismodul ceylon.language wird automatisch importiert.

Wichtige Befehle

ceylon compile Hello.ceylon           # kompilieren (JVM)
ceylon run hello                       # Programm ausfuehren
ceylon compile-js Hello.ceylon         # JavaScript-Backend
ceylon doc hello                       # Dokumentation erzeugen
ceylon import com.example:module/1.0   # Modul aus Repository holen

Weitere Subcommands der ceylon-CLI sind unter anderem copy (Module zwischen Repositories kopieren) und config (Konfigurationsdateien verwalten).

Einordnung

Die letzte Version 1.3.3 erschien am 21. August 2017; danach stellte Red Hat die Entwicklung ein — Java selbst hatte sich mit schnelleren Release-Zyklen wieder geöffnet. Ceylon reiht sich in die JVM-Sprachfamilie neben Java, Kotlin, Groovy und Scala ein. Mit Frege teilt sie das JVM-Ziel, mit Fantom die Mehrziel-Unterstützung.