Shapeless: Exploring Generic Programming in Scala

In the second presentation from the 2012 Northeast Scala Symposium, Miles Sabin introduces us to 'shapeless'. Generic (aka polytypic) programming involves parametrizing programs in terms of the "shape" of the data types they operate on, going beyond what's possible with simple type parametrization. In the Haskell world it's exemplified by Scrap your Boilerplate and related projects.
Shapeless is an exploration of this space in Scala, and this presentation shows some of its capabilities and applications and also explains some of the type class and dependent type based implementation techniques involved.
Here are Miles' slides:
The Northeast Scala Symposium is a yearly gathering of the Scala community, made possible by efforts of  Boston, Philadelphia and New York Scala enthusiasts.
Published March 19, 2012