2010 · 73 citations · 18 references
ComputingComputer ScienceCompilersFormal MethodsProgramming LanguagesAbstract Syntax TreesData TypesData-flow AnalysisFunctional ProgrammingGeneric ProgrammingType SystemsGeneric FunctionsGeneric TypesPolymorphic Type SystemsPolymorphic TypesType ClassesType ConstructorsType-level Programming
Haskell's deriving mechanism supports the automatic generation of instances for a number of functions. The Haskell 98 Report only specifies how to generate instances for the Eq, Ord, Enum, Bounded, Show, and Read classes. The description of how to generate instances is largely informal. The generation of instances imposes restrictions on the shape of datatypes, depending on the particular class to derive. As a consequence, the portability of instances across different compilers is not guaranteed.
18
Template meta-programming for Haskell
Tim Sheard, Simon Peyton Jones · 2002 · 548 citations
Ralf Lämmel, Simon Peyton Jones · 2003 · 350 citations
Gérard Huet · Journal of Functional Programming · 1997 · 310 citations
PolyP---a polytypic programming language extension
Patrik Jansson, Johan Jeuring · 1997 · 246 citations · Full text