Ceylon is a programming language for writing large programs in team environments. It is elegant, highly readable, extremely typesafe... [more on the site]
Je vois passer toutes ces histoires de « 10x developer ».
Moi je suis un 2x developer !
Après tout, un développeur azerty en vaut deux non ?
#PasDeJourFeriePourLHumour
Fun project with @fmbck and @ceylonlang on how to easily and composably make subtyping systems with union and intersection types more powerful and yet still well-behaved and decidable!
"Generated" value equality is a popular language feature, but I think it's surprisingly tricky, and I think that most languages that do it do it wrong. @ceylonlang
At the value level you have values, functions, and higher-order functions. At the type level you also have types, type function, and higher-order type functions. You need a higher-order type function to really correctly write down the signature of map().
https://t.co/a5Y0YYQOP4
Note that Ceylon doesn't have wildcard capture except for Java interop, because:
1. with reified generics, it would require some extra work at runtime, and
2. with declaration-site variance, it's essentially never needed.
I just implemented proper support for wildcard capture when calling Java from Ceylon, and fixed this asymmetry: wildcard capture happens automatically whenever Ceylon infers type arguments to a Java method or constructor.
@BrightMuppet@eclipse_che@java Actually, the very best thing I've seen is to not have null as a special but as a value-type and support union types to explicitely make a variable nullable. @ceylonlang has the most beatiful null-safe approach I've ever seen, but I believe there are other ones doing it well.