xenial (1) DrIFT.1.gz

Provided by: drift_2.2.3-2.3_amd64 bug

NAME

       DrIFT - a type sensitive preprocessor for Haskell

SYNOPSIS

       DrIFT [ options ...  ] file ...

DESCRIPTION

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

       -v, --verbose
              chatty output on stderr

       -V, --version
              show version number

       -l, --list
              list available derivations

       -L, --noline
              omit line pragmas from output

       -o FILE, --output=FILE
              output FILE

       -s name:value, --set=name:value
              set argument to value

       -r, --results-only
              output only results, do not include source file

       -g rule, --global=rule
              addition rules to apply globally

       -i, --ignore
              ignore directives in file, which is useful with -g

ENVIRONMENT

       The environment variable DERIVEPATH can be used to declare  a  list  of  directories  which  contain  the
       modules  and/or  interfaces  that  define the additional classes you wish to derive from.  DrIFT is quite
       fussy about the format of the DERIVEPATH variable.  The directory list should have the following format:

              * each path should be separated by ‘:’
              * no space inserted anywhere
              * no final ‘/’ on the end of a path

       Examples of DERIVEPATH settings:
       good - /users/grad/nww/share/hugs/lib:/users/grad/nww/share/hugs/lib/hugs
       bad  - /users/grad/nww/share/hugs/lib/:/users/grad/nww/share/hugs/lib/hugs/

       © 2002 – 2004 DrIFT contributors

       Permission is hereby granted, free of charge, to any  person  obtaining  a  copy  of  this  software  and
       associated  documentation  files (the "Software"), to deal in the Software without restriction, including
       without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense,  and/or  sell
       copies  of the Software, and to permit persons to whom the Software is furnished to do so, subject to the
       following conditions:

       The above copyright notice and this permission notice shall be included  in  all  copies  or  substantial
       portions of the Software.

       THE  SOFTWARE  IS  PROVIDED  "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT
       LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND  NONINFRINGEMENT.   IN
       NO  EVENT  SHALL  THE  AUTHORS  OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY,
       WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT  OF  OR  IN  CONNECTION  WITH  THE
       SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.

SEE ALSO

       drift-ghc(1), ghc(1),

AUTHOR

       This  manual  page  was written by Arjan Oosting <arjanoosting@home.nl> for the Debian system (but may be
       used by others).