The DrIFT-cabalized package

[ Tags: bsd3, data-structures, deprecated, program ] [ Propose Tags ]
Deprecated. in favor of DrIFT

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

[Skip to Readme]


Versions,,, 2.2.4, 2.3.0
Change log ChangeLog
Dependencies base (<4), old-time, process, random [details]
License BSD3
Author Noel Winstanley, John Meacham <>
Maintainer <>
Category Data Structures
Home page
Source repository head: darcs get
Uploaded Mon May 10 21:51:37 UTC 2010 by GwernBranwen
Distributions NixOS:2.3.0
Executables DrIFT-cabalized-ghc, DrIFT-cabalized
Downloads 1867 total (193 in the last 30 days)
Rating (no votes yet) [estimated by rule of succession]
Your Rating
  • λ
  • λ
  • λ
Status Docs not available [build log]
All reported builds failed as of 2016-12-29 [all 6 reports]
Hackage Matrix CI


Maintainer's Corner

For package maintainers and hackage trustees

Readme for DrIFT-cabalized-

[back to package description]


This package contains a source distribution of DrIFT, a tool for automatic
derivation of Haskell class instances. DrIFT was formerly known as Derive.

The current homepage is at:


Contents of this package:

  - src         Directory with the source files of the DrIFT tool
  - example     Directory with examples of using the DrIFT tool
  - docs        Documentation


If you have pulled the source from the darcs repository, you must first build
the autotools scripts by running

 $ autoreconf -i

To configure and install DrIFT from source or from Hackage, you have two options.


You can install through the GNU Autools, like thus:

  $ ./configure --prefix=<dir>
  $ make install

Where <dir> is the directory in which you want to install the tool. Note that
a Haskell compiler (NHC or GHC) must be in your path. Otherwise, supply the
location of a Haskell compiler as follows:

  $ ./configure --prefix=<dir> --with-hc=<Haskell compiler>
  $ make install


You can also install through Cabal, the standard Haskell packaging tool with the usual set of commands:

      $ runhaskell Setup configure # optional --user --prefix=/home/user/bin
      $ runhaskell Setup build
      $ runhaskell Setup install # --user

(Remember, from Darcs requires autoreconf to have been run! If you are installing from Hackage, autoreconf should have already been run in the source tarball.)


You may optionally set the environmental variable $DERIVEPATH to the list of directories you wish to search for modules.

An example:


to run DrIFT, simply pass the Haskell file name as an argument. You may run
'DrIFT --help' to get a summary of the various command line options