[Chugalug] Ceylon

Dan Lyke danlyke at flutterby.com
Thu Nov 14 23:28:23 UTC 2013

On Thu, Nov 14, 2013 at 3:08 PM, DaWorm <daworm at gmail.com> wrote:
> subtype and parametric polymorphism
> declaration-site variance

C++ templates.

> intersection types

C/C++ "union"

> principal types

Smalltalk-ish "everything is an object".

> local type inference

C++ "auto" type.

> flow-dependent typing

I'm gonna guess that this is the sort of thing where you can switch on
a type, and then treat the object as that particular type down that
particular execution path.

> tuple types

a standard key-value type, akin to C++ STL "pair".

> comprehensions
> fully-reified generic types

I believe that these are basically ways to impose restrictions on
native types. A comprehension would be something like "list A contains
only the elements of list B that are of type 'Kangaroo'", kind of like
a live 'grep' alias, and fully-reified generic types are things like
"define a vowels type that's a a string that can only contain


More information about the Chugalug mailing list