What Kotlin Doesn’t Do and Why

From JVMLangSummit
Revision as of 14:48, 1 August 2012 by Abreslav (talk | contribs)
(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)
Jump to navigationJump to search

While working on Kotlin, we had to revise the list of initially planned features, because our experiments showed that in some cases the apparent benefits of this or that feature are not significant enough to outweight the implementation and/or interoperability issues.

In this workshop session we describe the features that we dropped, and our motivation, aiming at provoking fruitful discussions on both feature values and optimal implementation strategies.

The list of Kotlin’s absent features includes:

  • Uniform arrays
  • Multiple inheritance
    • State in traits
    • Linearization
  • Reified generics
    • Type information at runtime
    • Specialization
  • Full pattern matching
    • Tuples
    • GADTs
  • Multiple constructors

Useful links: