Aaron Levin at Lambda World 2016
The Dialectics of Type-Level Programming
Can my compiler also compute? The answer is often an astounding yes. Programmers have taken advantage of their compiler’s limited runtime to produce safer and more extensible code for decades. But what else can we build? In this talk, we explore how to use typeclass resolution in Scala and Haskell to coerce our compiler to compute as inspired by Shapeless, a Scala library for generic programming, and Servant, a Haskell library for declaring HTTP APIs as a type. Alas, paradise has its price. Is type-level programming a Monkey’s Paw, Hairy Yak, or Golden Ticket? You decide!
Subscribe to our official YouTube channel to be updated when new videos are added.