Welcome to Ceylon
Ceylon is a programming language for writing large programs in a team environment. The language is elegant, highly readable, extremely typesafe, and makes it easy to get things done. And it's easy to learn for programmers who are familiar with mainstream languages used in business computing. Ceylon has a full-featured Eclipse-based development environment, allowing developers to take best advantage of the powerful static type system. Programs written in Ceylon execute on any JVM.
What?
Ceylon is a general-purpose, imperative, statically-typed, block-structured, object-oriented, higher-order language featuring a syntax similar to Java and C#, and a type system based on the notion of principal types.
Since 'Hello World' is the traditional way to introduce a language, here's how it looks in Ceylon:
void hello() {
print("Hello, World!");
}
To learn more, you can start with our quick introduction or take an in-depth tour of Ceylon.
Why?
Ceylon is deeply influenced by Java. You see, we're fans of Java, but we know its limitations inside out. Ceylon keeps the best bits of Java but improves things that in our experience are annoying, tedious, frustrating, difficult to understand, or bugprone. Furthermore, Ceylon makes it much easier to write generic code (frameworks or libraries), or to naturally describe treelike structures (especially user interfaces). Of course, Java isn't the only language with good ideas, so Ceylon looks for inspiration in other language families, in everything from Smalltalk to ML.
The design of Ceylon is guided by five important concerns that serve as a kind of mission statement for the project.
When?
Our second milestone release, Ceylon M2 "Minitel", is already available for download. It includes a reasonably complete and stable specification and a complete command line toolset (compiler, runtime, documentation compiler). A compatible release of Ceylon IDE will soon follow, but you can still use the previous release, which is available.
We've divided our work into five milestones. The second milestone covered perhaps 85% of the language, along with the core language module (the types mentioned in the language specification). The remaining milestones cover the rest of the language, along with the basic class libraries, and will incorporate any adjustments to the language that we find necessary based on community feedback.
The development team, which includes volunteers from the community and a number of Red Hat employees, is currently developing the second milestone release. Their work is always visible in the public GitHub repositories.
For more details, see the roadmap.
Follow Ceylon on