The Advanced Type Mechanics Course from Propensive
The Advanced Type Mechanics Course is the most comprehensive study of the Scala Type System ever undertaken. Building on over a decade of experience with Scala, Jon Pretty will break the Scala typechecker down into composable low-level building-blocks, which will liberate users into being able write and understand type-level code with ease.
Attendees to the course will finish with a good practical understanding of every aspect of the Scala typesystem, and will develop an ability to see the type system in a new light, as a set of tools for writing safe, type-level computations, and designing expressive APIs which combine the strength of the type system with the flexibility of type inference, to enforce programming constraints intuitively. Although it is not a specific goal, Advanced Type Mechanics will teach the type system in enough detail for a competent developer to reimplement the majority of its functionality from scratch.
The course takes place over two full days, alternating between taught sections, and worked examples which offer a combination of extensive familiarization with fundamental type-system concepts, and real-world examples which build upon them. It focuses purely on features of the Scala language. It does not touch upon the specifics of Shapeless or any other Typelevel libraries, though it will give attendees the means to understand how they work effortlessly. Knowledge of category theory or formal logic is not relevant to the course.