Introduction to Ceylon
Stéphane Épardaud
The plan
•
•
•
•

Why Ceylon
What is Ceylon
The Ceylon ecosystem
Samples
Why Ceylon
• Ceylon is
– Powerful, readable, predictable

• Ceylon has
– A platform, modularity, tooling
What is Ceylon (1/3)
• Static typing
– Type inference, union&intersection types

• Syntax that gets out of the way
– Shorter, more readable constructors,
attributes, methods
– More regular

• Functional aspects
– First-class functions, comprehensions
What is Ceylon (2/3)
• Flow typing
– Tests or assertions

• Reified generics
• Simpler method invocation
– Default argument values, pass by name

• Powerful metamodel
• More expressive annotations
What is Ceylon (3/3)
• Modularity
• Compiles to JVM and JSVM
The Ceylon ecosystem
The Ceylon ecosystem (1/2)
• Minimal ceylon.language module
– Basic types
– Metamodel

• Ceylon IDE
– Eclipse ready, IntelliJ in the works

• CLI
– ceylon help, à la git
The Ceylon ecosystem (2/2)
• Ceylon SDK
– Collections, file system, database, IO/net,
test, build, html, json, process, math

• Ceylon Herd
– Next-gen module repository

• Cayla
– Ceylon Web Framework
Demo
On to the next talk

Ceylon introduction by Stéphane Épardaud

  • 1.
  • 2.
    The plan • • • • Why Ceylon Whatis Ceylon The Ceylon ecosystem Samples
  • 3.
    Why Ceylon • Ceylonis – Powerful, readable, predictable • Ceylon has – A platform, modularity, tooling
  • 4.
    What is Ceylon(1/3) • Static typing – Type inference, union&intersection types • Syntax that gets out of the way – Shorter, more readable constructors, attributes, methods – More regular • Functional aspects – First-class functions, comprehensions
  • 5.
    What is Ceylon(2/3) • Flow typing – Tests or assertions • Reified generics • Simpler method invocation – Default argument values, pass by name • Powerful metamodel • More expressive annotations
  • 6.
    What is Ceylon(3/3) • Modularity • Compiles to JVM and JSVM
  • 7.
  • 8.
    The Ceylon ecosystem(1/2) • Minimal ceylon.language module – Basic types – Metamodel • Ceylon IDE – Eclipse ready, IntelliJ in the works • CLI – ceylon help, à la git
  • 9.
    The Ceylon ecosystem(2/2) • Ceylon SDK – Collections, file system, database, IO/net, test, build, html, json, process, math • Ceylon Herd – Next-gen module repository • Cayla – Ceylon Web Framework
  • 10.
  • 11.
    On to thenext talk