scalaz
Inject type class as described in "Data types a la carte" (Swierstra 2008).
http://www.staff.science.uu.nl/~swier004/Publications/DataTypesALaCarte.pdf
Inject type class as described in "Data types a la carte" (Swierstra 2008).
http://www.staff.science.uu.nl/~swier004/Publications/DataTypesALaCarte.pdf