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:
- High Performance Linear Algebra in Scala (SkillsCast recorded in December 2014)
- Scala Days 2023 (Online Conference on 1st - 30th December 2023)
- Fall-from-Grace: A Typed and Programmable Superset of JSON (SkillsCast recorded in December 2022)
- Taming the Context Beast (SkillsCast recorded in October 2022)
Workshop: Shapeless for Mortals
Sam Halliday is a chartered mathematician and software engineer with a love for technology innovation and free software (ENSIME, spark/netlib-java, etc).