Haskell / Scala developer working at Symbiont on a permissioned blockchain. Author of the specs2 testing library in Scala
Lambda abstraction is the magical tool of Functional Programmers. But what if you want to rearrange what is behind a lambda?
What if you want to give a different meaning to the + operator in the function body without touching anything else?
This talk will explore the various ways we can “assemble" our code in order to get maximum reuse and in particular typeclasses in Haskell:
– Where do we use them? Where do they fall short? Can we improve on them?
– Do we even need compiler support?
– Could other foundations than the lambda calculus give us what we are looking for?