Just-in-time Specification: Evolving Kotlin One Feature at a Time
This program is tentative and subject to change.
Kotlin is turning 14 this year, meaning it is entering its adolescence. Over the years, the language has undergone two re-implementations, expanded to new target platforms, and added dozens (if not hundreds) of new features. Despite this rapid evolution, it has remained a (mostly) self-consistent language. In this talk, I will examine how Kotlin approaches language evolution and design: how new language features are conceived, the steps from idea to implementation, and why some features ultimately fail. We will explore this through the lens of “just-in-time specification” – an approach of introducing formal definitions only when necessary to support language evolution. Rather than specifying everything upfront, Kotlin develops its specification(s) iteratively, guided by practical experience and real-world needs. I will discuss why this approach was chosen over a more traditional “ahead-of-time specification”, the trade-offs it entails, and how it enables Kotlin to evolve efficiently.
This program is tentative and subject to change.
Fri 4 JulDisplayed time zone: Amsterdam, Berlin, Bern, Rome, Stockholm, Vienna change
14:00 - 15:45 | |||
14:00 30mTalk | Just-in-time Specification: Evolving Kotlin One Feature at a Time PLSS Marat Akhin JetBrains | ||
14:30 30mTalk | The Software Supporting the JavaScript Language Specification PLSS | ||
15:00 30mTalk | APL Standards PLSS Karta Kooner Dyalog Ltd. |