Staged Sums of Products
Matthew Pickering, Andres Löh, Nicolas Wu

Generic programming libraries have historically traded efficiency in return for convenience, and the generics-sop library is no exception. It offers a simple, uniform, representation of all datatypes precisely as a sum of products, making it easy to write generic functions. We show how to finally make generics-sop fast through the use of staging with Typed Template Haskell.

Download / Links
Draft, submitted to Haskell 2020

Valid XHTML 1.0! Valid CSS!

Andres Löh, 2020-05-16