How are we going to migrate to Scala 3.0, aka Dotty?
summary
Scala 3 aims to be Scala 2 plus one: compatibility is top priority while adding simplifications, new syntax and a more opinionated surface. Migration path uses Scala 2.14 as a bridge, automated rewrites via scala-fix and a new Scala rewrites repo, and binary interop through careful testing and a “Frankenstein” pipeline around TASTy/quotes. Macros move to a new API so some libraries need separate sources; expect deprecations (existentials, early initializers) and a target release in about one to two years.
AI-written summary · about
chapters (25)
- 0:00Intro
- 1:34Talk Outline
- 3:10Principles Behind Scala 3
- 5:37Paradigm Shift
- 8:30Extension Methods, Toplevel Definitions
- 10:12Type Class Encoding
- 12:49Type System Evolution
- 14:15Scala 3 by Migration Impact
- 15:01Breaking Changes
- 17:21Macros and Metaprogramming
- 19:38Specialization
- 20:27New Features
- 21:34Scala 2 Support
- 22:59Unchanged in Scala 3
- 26:06Who's Behind Scala
- 28:05Scala 3 Design Discussions
- 29:37Scala 2.14: Prepare for 3
- 30:492.14 and 3: Developed Together
- 32:482.14 and 3: Binary Interop
- 34:12Testing
- 35:03Community Build
- 36:16Timeline
- 39:27Cross Building
- 40:45Scala Maintenance
- 41:39Summary








