The DrIFT package

[Tags: bsd3, library, program]

Data.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


Versions2.4.0, 2.4.1, 2.4.2
Change logChangelog
Dependenciesbase (>=4.0 && <5), DrIFT, filepath, old-time, process, random
AuthorNoel Winstanley, John Meacham <>
Maintainergwern <>, Metasepi team <>
CategoryData Structures
Home page
Source repositoryhead: git clone
Executablesdrift-ghc, DrIFT
UploadedMon Nov 11 15:35:32 UTC 2013 by KiwamuOkabe
DistributionsDebian:2.2.3, NixOS:2.4.2
Downloads1318 total (64 in last 30 days)
StatusDocs available [build log]
Successful builds reported [all 1 reports]




Maintainers' corner

For package maintainers and hackage trustees