So we've been introduced to Scala 3...
Let's find out!
The Shape(less) of Type Class Derivation in Scala 3
Type class derivation in Scala 2 is powered by a combination of implicit-driven type-level programming and macros. The latter are going away in Scala 3, and there are entirely new mechanisms for type-level programming arriving: specializing inlining, match types, and inline matches. Will these, and maybe a sprinkling of new language-level primitives, support type class derivation as well as Scala 2? Maybe even better?
In this talk I will show you the current state of the art in Dotty, how that improves on what we can do today in Scala 2, and what we can look forward to in Scala 3.
About Miles Sabin
Miles has been doing stuff with Scala for more than a decade, currently with Underscore Consulting. He is a cofounder of Typelevel and his best known project, the Scala generic programming library shapeless, is the weapon of choice wherever boilerplate needs to be scrapped or arities abstracted over. Lately he has been spending most of his time hacking on scalac and dotty, trying to make shapeless redundant.