The Road to Functional Programming

Educational material to learn functional programming in Scala, from scratch, in a structured and comprehensive way.

View project on GitHub

Scala language feature: Type classes (or classes of types)

Type constructors

Ad-hoc polymorphism

Simple examples

Proof that a kind exists

Recursive resolution of type classes (with implicits scopes)

References