Key features of Ceylon
Ceylon is a language for writing large programs in teams.
It's elegant, extremely powerful, readable, and lots of fun.
Here's some of what's special about it.
Cross-platform execution
Ceylon programs execute on Java and JavaScript virtual machines, and can easily interoperate with native code, and take advantage of the huge library ecosystems of those platforms.
Platform libraries
Ceylon provides a brand-new modular SDK, with elegant, cross-platform APIs for all the most common programming tasks.
Modularity
Code is organized into packages and modules, and compiled to module archives.The tooling supports a system of module repositories, with Ceylon Herd as its social focus point.
Tooling
Ceylon has a full-featured Eclipse-based IDE and excellent command-line tools, with support for modularity baked right in.
The ceylon
command is a real Swiss Army knife, with an open plugin architecture.
Powerful type system
The type system is especially clean, elegant, and powerful, featuring intersection and union types as basic building blocks, along with enumerated types and type aliases.
Object-oriented programming
Programming with objects is a breeze. Everything is an object, even numeric values, even the null value, even a function or class. Handle collections with higher-order functions and comprehensions, and an elegant streams API. Model difficult relationships with mixin inheritance.
Type inference, flow-sensitive typing, and typesafe null
Ceylon is more typesafe than other languages, but you write down fewer types: the
language features
local
type inference,
flow-sensitive typing, a typesafe null
value, and a typesafe switch
statement.
Simplified generics with fully-reified types
Generics that don't suck: Ceylon "fixes" generics with declaration-site covariance and contravariance, reified type arguments, and principal instantiation inheritance.
Ceylon's reified generics even allow us to inspect runtime type arguments in the debugger.
Typesafe metaprogramming
Annotations, a typesafe metamodel, and reified generics are the foundation of Ceylon's unique approach to typesafe runtime metaprogramming, which makes framework development a pleasure.
To learn more, start with the quick introduction.