Ceylon fully-reified in new milestone build
Latest preview of Red Hat JVM language adds tuples, date-time module and an HTTP server.
Though later than expected and the first release since October, it’s described by the team as “a huge release”, and a step closer to a feature-complete first version of the language.
Last month, King reported on the official blog that milestone 4 had “gone quite a bit off the roadmap”, citing the revising of previous design decisions as well as the implementation of tuples. Though a far cry from the feature-release beta said in October to be arriving early 2013, the fifth milestone (codenamed “Nesa Pong”) delivers all new features promised last month.
Tuples, a standard language feature similar to an array shared by many common languages, was an essential addition, said King. However, its addition to the language was “somewhat disruptive”, slowing development considerably.
Other unsexy but undeniably practical additions include a datetime module and an HTTP server, the latter of which is based on Undertow, a Java web server set to power future versions of JBoss AS.
The feature the team appear most proud of, however, is achieving a fully-reified type system, one of the defining features of Ceylon. Promised for Ceylon over two years ago, reified generic type arguments are shared by C# but absent from Java itself.
“It’s going to take a fair bit more work to do all the optimizations we plan in order to wring acceptable performance out of this stuff,” notes King, “but we’ve got a couple of clever ideas in this area.”
While development is only just beginning on milestone 6 of Ceylon, initial plans suggest that the team may aim for a feature-complete release as they gear up for a v1.0 release later this year.