6 ms·
Ask HN: What Happened to Ceylon Language?
I was reading a post about yet another language on HN's front page when I was reminded of Ceylon language which some years back was being promoted as an alternative to Java. I remember seeing it frequently those years but then I stopped following. Now I searched for it and it looks abandoned? The latest news I can find is that it's been donated to Eclipse foundation. What happened?
- amelius 4y agoAny references to its documentation?
- Yeroc 4y agoIt was essentially killed during Google I/O (May 2017) when Google announced that it would add Kotlin as an official programming language for Android development. This gave Kotlin a huge boost in visibility at a time when a number of languages including Ceylon were competing as alternative JVM-languages. RedHat understood that and a few months later it was announced that Ceylon was being donated to Eclipse which was a euphemistic way of saying it was now abandonware. It's too bad because I personally preferred Ceylon over Kotlin.
- mindcrime 4y agoThe details are fuzzy in my memory, but as best as I can recall Ceylon was basically created / run by some people from Red Hat / JBoss. They promoted it for a while, but eventually decided to abandon it for some reason. Again, the details are fuzzy, but I think they just decided that other languages that had also some along (maybe Kotlin?) had gotten "good enough" and that Ceylon didn't really have a niche where it was going to be highly in demand. Or something like that. Don't quote me on this, it was all some time ago. EDIT: Some bits and pieces of additional info: https://ceylon-lang.org/blog/2017/08/21/eclipse-ceylon/ https://ceylon-lang.org/blog/2017/08/21/eclipse-ceylon/ https://github.com/eclipse/ceylon/issues/7454 https://github.com/eclipse/ceylon/issues/7454 https://news.ycombinator.com/item?id=15057893 https://news.ycombinator.com/item?id=15057893
- d35007 4y agoIIRC, Red Hat got acquired by IBM and the funding evaporated. I think Gavin King works on Quarkus now.
- mindcrime 4y agoRed Hat definitely got acquired by IBM, but I thought the Ceylon decision happened before that. It's totally possible that I'm wrong on that though.
- d35007 4y agoAh, you’re right. The team blogged about the move at https://ceylon-lang.org/blog/2017/08/21/eclipse-ceylon/ https://ceylon-lang.org/blog/2017/08/21/eclipse-ceylon/, and they use the present tense when talking about Red Hat > As you surely know, Red Hat has been the main sponsor of Ceylon over the years, and we're all eternally grateful for this support. It would have been simply impossible to kick-start a project of this scope without the backing of Red Hat. (Full disclosure: we ourselves are employed by Red Hat.) I had a faulty recollection of this post on the ceylon/dev Gitter https://gitter.im/ceylon/dev?at=5d2765cff5dd14574268bcb3 https://gitter.im/ceylon/dev?at=5d2765cff5dd14574268bcb3. Funding dried up at Red Hat. Gavin King said that he might try to convince IBM to revive it, but only if he had a clear business case. > Folks I guess I owe you a bit of a response here, but obviously I have my reasons for not wanting to say too much in public > As of yesterday I'm an IBM employee which hopefully means that in the medium term there will be more money available for R&D around here, for projects which can make a reasonable case for being worthy of investment in the last couple of years of Red Hat's existence as an independent company, there was essentially no funding available for this kind of project, and Ceylon was a victim of that shortage > However, obviously, if I'm going to try and convince my fund a new development team for this project, I will have to find a convincing reason to do that, and I will have to think very carefully about what precisely a "next" Ceylon would look like (of course I already have some ideas of mistakes we made, and opportunities that now exist that didn't before, but no clear business case) > It's probably better if I don't say any more on this topic in this place
- ivanche 4y agoIt really looks abandoned. On this page [0] there is a list of leaders and commiters. Stéphane Épardaud is on Twitter [1], as well as Gavin King [2]. I will ask them. [0] https://projects.eclipse.org/proposals/eclipse-ceylon https://projects.eclipse.org/proposals/eclipse-ceylon [1] https://twitter.com/unfromage https://twitter.com/unfromage [2] https://twitter.com/1ovthafew https://twitter.com/1ovthafew
- layer8 4y agoMy impression was that it wasn’t getting much traction and thus was abandoned at some point. It was a nice “better Java”, but it didn’t have any compelling killer features and also not a lot of marketing behind it.
- gorjusborg 4y agoMy feeling is that the timing of trends in development at the time made Ceylon less attractive than it might have been based on its merits. I remember Ceylon being touted as a general purpose language that could target the web as well as the backend. * node.js - 2009 * Ceylon - 2011
- brabel 4y agoCeylon was designed to run as well on the JVM as on JavaScript... there was even a community member who for some reason got really far into making it run on the Dart VM. It was a great language, with awesome features we still don't see in a lot of languages (the way tuples were deeply integrated into the language such that function arguments were treated as tuples, nullable types were just unions Null|T, the advanced module system, type-safe reflection which enabled stuff like type-safe keypaths which someone posted for Rust the other day, were all brilliant included in Ceylon). However, the execution was not great. There were bugs, there was no killer app/framework for it, the focus was too much on the ideas. I am quite upset it basically lost completely to Kotlin (and maybe Scala)... I invested a good deal of time learning it and that turned out to be mostly wasted time, except for a few design approaches and ideas that stick with me and can be transferred nicely to less powerful languages.
- deleted 4y ago[deleted]
- nadavwr 4y agoThe "better Java" niche was hot during Java's stagnation era (starting 2006 and lasting for almost a decade). The JVM was considered a great runtime, with a stagnant language, and lots of newer languages competed in that niche. Scala and Clojure, and later Kotlin and others benefited greatly from that niche. The problem for the "better Java" niche was that Java never had to be the best JVM language in order to beat its JVM-based competition in the market. When Java started moving again (Java 8 introduced anonymous functions) and when the release cadence accelerated to every 6 months on 2017, the "Java is stagnant" justification for using other JVM languages lost a lot of traction. Clojure was never really a "better Java" -- it's a JVM-based Lisp with good Java interop. Scala never leaned too much on the "better Java" niche, and the community is increasingly consolidated around FP. Kotlin still has some "better Java" ambitions, but they also have the Android community at their back. Without Android you would have seen Kotlin trying harder to differentiate itself from Java (EDIT: Google and Kotlin tied the knot in 2017, when Java moved to 6-month release cycle; probably not a coincidence). Fairly young languages can still see rapid growth -- see Go (1.0 in 2012) and Rust (1.0 in 2015). But you are much less likely to see new languages trying to go head-to-head with Java on the JVM these days.
- astrange 4y agoIt doesn't seem like the JVM is that great to me; it's so memory-inefficient that it can't be performant except by brute force, and Java's famous lack-of-expressiveness is reflected in the bytecode too. Of course it does exist and works, so it's mature which is something. But all constants are in memory instead of on disk, no value types, gigantic headers on every object? C#/.NET is better here.
- invalidname 4y agoYou should update your knowledge on this matter. I suggest reading about GrallVM, Loom, Valhalla and many such topics. JVM also has much wider support in terms of management and 3rd party enterprise tooling.
- astrange 4y ago
- bachmeier 4y agoThis should tell you about the current status (which I interpret as "it's dead"): https://github.com/eclipse/ceylon/issues/7454 https://github.com/eclipse/ceylon/issues/7454
- AtlasBarfed 4y agoKotlin killed it, espceially with Google picking it for Android. I remember looking at it and it had some weird stuff and I liked Kotlin better, and Groovy was going strong. Kotlin is a "better java" from a footgun/safety + syntax perspective, and better than Ceylon in most features and ways. So it won that war. And here is another bad idea, from Ceylon's wikipedia: "Modularity built into the language, based on JBoss modules, interoperable with OSGi[10] and Maven[11]" Yikes. Three very-obsolete parts of the java ecosystem, and divisive in the ecosystem community at the time of their introduction/use. Not a good strategy. Groovy was a "better java" with lots of footguns and more-than-one-way and lots of cool features. So it won the scala/whomever war because it was a path for ruby and python people and paradigms. Most JVM evolution has been adopting groovy language features. Not that groovy did them in a revolutionary way, it just had them a lot earlier. But groovy is fading steadily as the JVM adopts its killer features. Groovy is my main programming language on the JVM. Clojure has the inherent problems of Lisps for popularity, and Scala was possibly the most complicated language every designed. Great for the top 1% of programmers, but oh well for mainstream success.
- kaba0 4y agoI really don’t buy this Scala complicated myth. It is a very small language, which is very expressive and has very powerful features. But it is not a complicated language, which I would leave for Rust and C++ having many features instead. Kotlin seems to have more features in-built than Scala even. Scala chooses more powerful features that incorporate the functionality of many.
- stickfigure 4y agoI frequently wish I had Ceylon's union + intersection types in Java. Typescript has them, but they aren't as rigorous. Also the collection classes were rethought and designed with immutability in mind (reading a list is a different interface from mutating a list). Honestly, it was/is a pretty great language. I think their biggest mistake was picking Eclipse as the IDE. They eventually produced an IntelliJ plugin but it was far too late. The serious JVM dev community had already picked IntelliJ. I don't know anyone who uses Eclipse anymore.
- kjsingh 4y agowasn't it coz Eclipse team was working on Ceylon? also Scala3 has the union + intersection types
- riskneutral 4y agoIt's called Sri Lanka now.