Ceylon SDK
Stéphane Épardaud
State of the SDK
• Progressing rapidly
• Most modules mature
– Some still need love

• Let's discover them!
ceylon.build
• The Ceylon build system
• Currently a work in progress
• Soon to be used to build Ceylon SDK
– Replace existing Ant build

• Other presentation by Loïc
ceylon.collection
• Basic collections
– MutableList, MutableSet, MutableMap
– LinkedList, HashSet, HashMap
– ArrayList, TreeSet, TreeMap, Queue, Stack
ceylon.dbc
• Database access
• Insert, update, delete, select
• Limited support for transactions
ceylon.file
• File systems, paths
• Files, directories, links
• Reader, Writer
ceylon.html
• Html creation and serialisation
• Tree-like representation
ceylon.interop.java
• Conversions between Java/Ceylon
– String
– Iterable/Iterator/Resource
– Java class literals
– Instance Java classes
ceylon.io
•
•
•
•

Not finished
Charsets
Buffers
Sockets/Files
– Selectors (non-blocking)
– Blocking
ceylon.json
• Create Json trees
• Serialise/parse
ceylon.math
• Arbitrary-precision
– Whole, Decimal

• Mathematical operations
– Float, Integer
• Rounding, cos, sin…
ceylon.net
• Unfinished parts
• Uri
– Uri parsing/building done right

• Http
– Client written in Ceylon
– Server wrapper for Undertow
ceylon.process
• Launching external processes
• Dealing with input/output/error
• Environment
ceylon.test
•
•
•
•

Unit testing
Declarative syntax
Eclipse plugin
Presentation by Tomaš
ceylon.time
• Date/Time library
– Largely based on JodaTime / Jsr-310
– Date, Clock, Instant, Duration, Period
– Calendars
ceylon.unicode
• Categories
• Directionality
• Character names
ceylon.next
•
•
•
•

ceylon.transaction
ceylon.locale
ceylon.concurrency
Looking for contributors!
On to the next talk

Ceylon SDK by Stéphane Épardaud