Comparing Datatype Generic Libraries in Haskell - Kiselyov, B (2009)