Note: information on this page refers to Ceylon 1.1, not to the current release.
Frequently Asked Questions
On this page you'll find answers to a few of the most common questions about the Ceylon project.
- What is Ceylon?
- Where can I run Ceylon?
- Why a new language?
- How is Ceylon different?
- But there's already so many languages out there!
- How about Java interoperability?
- Where can I read more about some of your language design choices?
- The project and team
- Who's behind this project?
- How is Ceylon pronounced?
- Where can I read some user's opinions of Ceylon?
What is Ceylon?
Ceylon is a new programming language that's deeply influenced by Java, designed by people who are unapologetic fans of Java. It's a language designed specifically for writing large programs in teams.
Where can I run Ceylon?
You can run Ceylon anywhere a Java 7 or 8 Virtual Machine is available. The Ceylon compiler uses the bytecode generator in Open JDK to produce Java bytecode. Ceylon modules even run on Vert.x or in any OSGi container.
Note that not all Ceylon modules are available for both
platforms. A module might be cross-platform, it might by
ceylon.language is completely cross-platform.
Why a new language?
Well, we've been designing and building frameworks and libraries for Java for ten years, and we know its limitations intimately. And we're frustrated. The most recent releases of Java go some distance to alleviating some problems, but even the newest language features strain to accommodate past mistakes and the requirement for full backward compatibility.
But much of our frustration is not even with the Java language itself. The extremely outdated class libraries that form the Java SE SDK are riddled with problems. Developing a great SDK is a top priority of the project.
How is Ceylon different?
Every language has its strengths and weaknesses. Ceylon is a great language if you want to create easily understandable and maintainable code with minimum fuss, especially if you like navigating and writing code with the help of an IDE. It's also an especially great language if you care about modularity.
There are five important concerns that guide the design of the language and platform.
But there's already so many languages out there!
How about Java interoperability?
Java interoperability is a major priority for the project. However, since Ceylon will be based on its own modular SDK, making a clean break from the legacy Java SDK, Ceylon will sometimes benefit from frameworks designed especially for Ceylon. That's reasonable, since Ceylon is a much nicer language for developing frameworks and libraries than Java!
Where can I read more about some of your language design choices?
Try the language design FAQ.
The project and team
Who's behind this project?
Ceylon is a community project sponsored by Red Hat. You can read more about the team here.
How is Ceylon pronounced?
There's some debate about that but the accepted pronounciation
in the team is /sɨˈlɒn/.
Or in less fancy schmancy phoneticsy,
(On the other hand, lot's of folks seem to pronounce it
say-lon with the emphasis on the first syllable so if you
say it like that we'll probably know what you're talking
Where can I read some user's opinions of Ceylon?
How can I contribute to Ceylon?
Are you interested in joining the team and helping improve the Ceylon language, the compiler, the class libraries, or the IDE? Then contact us on our dev mailing list.
Want to get your hands on the code? Read how to access the source.
Feeling adventurous and want to help us with the compiler backend? Read about how to work on that project.
Found a problem, how can I improve the website?
The website is fully open and you can easily contribute typos, improvements, or new pages very easily.
What version of Java is required to run Ceylon?
Both Ceylon and Ceylon IDE require Java 7 or Java 8.
Can you tell me more about how it works?
You can read up on the architecture.
What license is Ceylon released under?
All the code, the language specification, and even our website is open source. It's extremely important to us that the entire platform be open and unencumbered.
What is the naming convention for Ceylon platform releases?
Ceylon production releases are named after Minds from the late great Iain M. Banks' Culture series.
Am I allowed to say "ceylonish"?
No, the correct term is "ceylonic".
What is the elephant's name?
His name is "Trompon".