The third virtual edition of the Kotlin London meetup is Wednesday, July 1st at 6:00 p.m. BST featuring talks from Garth Gilmour from Instil, Matt Moore from Rally Health, and Nicolás D’Cotta, a Computing student at Imperial College London.
Garth Gilmour - Generics on the JVM: What you don’t know will hurt you
Generics on the JVM is hard. You don’t need to look far to find evidence of this, but a good start would be the 350 page FAQ. Issues with Generics trace back to three root causes. First, the inherent difficulty combining type parameters with sub-typing, second the compromises made in the Java syntax and finally the decision to go for a non-reified implementation.
Kotlin does its best to mitigate these problems. For example, declaration-site variance and type projections are used instead of wildcard types, and reification is supported for type parameters of inline functions. When combined with IDE support this makes generic coding less fraught and much more productive.
This talk will provide an in-depth explanation of what makes the Kotlin approach more appealing, in terms of both code maintainability and the bytecode produced by the compiler. We will also use languages like TypeScript and C# to look at what might become possible in the future, as the Java Platform evolves.
Matt Moore & Nicolás D’Cotta - Adding pattern matching to Kotlin
One of the reasons Kotlin has proven so popular is its wide array of abstractions and constructs. But pattern matching, a popular feature that in other languages allows us to easily inspect data and act accordingly, is currently missing.
This talk aims to explore the possibility of adding pattern matching to Kotlin. It will go through why and how it could be done, from adding it to the actual language to using a compiler plugin (much like kotlinx.serialization works).
More specifically, we will discuss:
- Why would Kotlin benefit from pattern matching?
- How do other languages compare?
- If we added it to the language, what could it look like?
- Can we ‘make it’, without baking it into the language?
Join the Kotlin London meetup group to access this free event.