Please log in to watch this conference skillscast.
The case study is spray-json-shapeless, a library that uses shapeless to derive serialisers for consumption by spray-json. You will learn about concepts such as Hipster.Aux, Generic, HList, Coproduct, Lazy and Strict, as well as some caveats (i.e. bugs in the Scala compiler) that can restrict what is possible. You will be involved in applying what you have learnt to S-Expression serialisation, which is exactly how the ENSIME SWANKY protocol works.
Time permitting, you will also take a tour of lesser-known features of shapeless that are being used by ENSIME to solve problems at compile time (that are often solved with verbose runtime reflection).
Code and setup instructions are available in this Github repo
YOU MAY ALSO LIKE:
Workshop: Shapeless for Mortals
Sam Halliday
Sam Halliday is a chartered mathematician and software engineer with a love for technology innovation and free software (ENSIME, spark/netlib-java, etc).