Recursion with Types
by Miguel Iglesias
Shapeless is about providing evidence to the compiler. And the way of doing so, is using typeclasses & recursion *at compile time*.In this talk we'll gain some intuition about it, by discussing the implementation of a typeclass that would let us "find" a type in a case class. e.g. Foo(1,"a").find[String] == Some("a")
Blazingly fast, elegant Scala builds with CBT
by Chris Vogt
Writing advanced builds in sbt is like black magic. Very few master it. Most just copy, paste & hope for the best. But it doesnt have to be that hard. CBTs simple model scales to things that are between hard & borderline impossible with sbt & makes them super easy. This talk highlights some of CBTs more advanced features & the CBTs roadmap for mainstream adoption.
Editing Trees with Zippers
by Ratan Sebastian
When trying to write functional programs we often run into situations where the implementation of the algorithm that uses destructive mutation is much more efficient than the version that uses immutable values. In this talk well look at one specific data structure: a tree, & look at a tool (zippers) that allow you to mutate & grow the tree while avoiding destructive mutation & remaining efficient. We will then talk about how zippers can be generalized to any data structure.