DrIFT

Program to derive type class instances

http://repetae.net/computer/haskell/DrIFT/

Latest on Hackage:2.4.2

This package is not currently in any snapshots. If you're interested in using it, we recommend adding it to Stackage Nightly. Doing so will make builds more reliable, and allow stackage.org to host generated Haddocks.

BSD-3-Clause licensed by Noel Winstanley, John Meacham
Maintained by gwern, Metasepi team

Data.Derive http://hackage.haskell.org/package/derive is good another solution for DrFIT. But DrFIT is Haskell 98 compliant, derive is not.

DrIFT is a type sensitive preprocessor for Haskell. It extracts type declarations and directives from modules. The directives cause rules to be fired on the parsed type declarations, generating new code which is then appended to the bottom of the input file. The rules are expressed as Haskell code, and it is intended that the user can add new rules as required.

DrIFT automates instance derivation for classes that aren't supported by the standard compilers. In addition, instances can be produced in seperate modules to that containing the type declaration. This allows instances to be derived for a type after the original module has been compiled. As a bonus, simple utility functions can also be produced from a type.

This package was cabalized by gwern [email protected].