Scrap your boilerplate

Scrap your boilerplate (SYB) is another early approach to datatype-generic programming, that is, it provides a way to define generic functions over a "universal" type representation.

SYB differs from the other two approaches we have explored in that the type representation is obfuscated from the user.

Earlier versions of the SYB approach had a strong focus on generic traversals over complex nested data structures, for example:

data Book = Book Title [Chapter] data Chapter = Chapter Title [Section] data Section = Section Title [Para] type Title = String; type Para = String haskellDP = Book "Haskell Design Patterns" chapters chapters = [Chapter "The building blocks" sections1, Chapter "IO Patterns" sections2] sections1 = [Section ...

Get Haskell Design Patterns now with the O’Reilly learning platform.

O’Reilly members experience live online training, plus books, videos, and digital content from nearly 200 publishers.