Double whammy

RedHat’s Java/Javascript hybrid Ceylon progresses: M3 released

Chris Mayer

We’re drawing ever nearer towards a beta version of Gavin King’s JVM amalgam that brings Java and Javascript together

Roughly a month on from their last dispatch, the team behind Red Hat’s fledgling JVM language Ceylon have released the latest milestone in the long road towards a first full version of the language – dubbed unfairly by some as a ‘Java killer’.

As detailed in last month’s preview, Ceylon M3 “V2000” makes it possible for Ceylon to support both Java and JavaScript virtual machines and brings forth numerous improvements, notably a fully-compliant compiler. Combined with the milestone comes a simultaneous compatible release of a dedicated Ceylon IDE, based on Eclipse.

With an IDE now present, Ceylon’s communal module repository, Ceylon Herd can now get down to work, with the first three Ceylon platform modules now available. The three modules, other than the distribution included ceylon.language are: ceylon.math, ceylon.file (for interacting with heirarchical filesystems) and ceylon.process  (for starting native child processes).

Ceylon IDE now automatically fetches module archives from Ceylon Herd to satisfy dependencies declared in the module descriptor. As an added bonus, you can write Ceylon code that calls a Java binary, navigate to its attached source code, autocomplete its declarations, hover to view its JavaDoc, etc. Now, that’s quite neat. With the interchangability of Ceylon and Java code at will (in case you’re struggling to work out a Ceylon equivalent from the get go), Ceylon looks pretty dynamic.

This landmark milestone means that most of the work towards creating a full-language implementation has been done. Mixin inheritancecomprehensionsanonymous functionscurried functions and other important features have been added this time, making Ceylon look and feel like a proper JVM convert now. Java interoperation is now “robust and well-tested”, according to creator Gavin King. Alongside the offer of JavaScript compilation, there’s the inclusion of a launcher for running Ceylon programs on Node.js.

It’s a sizeable leap for the hybrid language with big hopes, putting together the important architecture behind a language to ensure it’s as fully-fleshed out as possible. We also learnt through the release blog that Ceylon’s 1.0 beta is imminent, set to arrive in September or October. Until then, peruse the documentation, the current draft of the language specification, the roadmap, and information about getting involved. From the work done so far, the only way is up for Ceylon and we await to see what treats King et al bring in the future


Leave a Reply

Be the First to Comment!

Notify of