---
name: "greencard-nhc98"
section: "1"
platform: "linux"
package: "nhc98"
version: "1.16-15"
release: "Debian 3.1 (Sarge)"
platforms: ["linux"]
url: "https://new.carta.tech/greencard-nhc98"
---

# greencard-nhc98(1)

Haskell C-Interface Preprocessor

## NAME

GreenCard-nhc98 - Haskell C-Interface Preprocessor

## SYNOPSIS

**greencard-nhc98** \[options\] filename

## DESCRIPTION

*greencard-nhc98* is a preprocessor for Haskell which allows Haskell functions to call C.  (Incidentally, nhc98 also has the ability to call Haskell code from C using GreenCard to set up the interface.)  Greencard is generally called automatically by nhc98 when it is given a file with the extension ".gc".

GreenCard-nhc98 will read from standard input if no filename is given.

## OPTIONS

- **-t, --target TARGET**

  Generate code for a particular Haskell compiler.

- **--version**

  Prints the version number, then exit successfully.

- **-h, --help**

  Print a usage message listing all available options.

- **-v, --verbose**

  Print more information while processing the input.

- **-d, --debug**

  Print even more information while processing the input.

- **-i DIRS, -PDIRS, --include-dir DIRS**

  Search the directories named in the colon (':') separated list for imported files.  The directories will be searched in a left-to-right order, after the current directory.

- **-g, --fgc-safe**

  Generates code that can use callbacks to Haskell.  This makes the generated code slower.

## SEE ALSO

[hmake(1)](/hmake/1.md), [nhc98(1)](/nhc98/1.md)

## AUTHORS

Based on text by Thomas Nordin, Simon Peyton Jones, Alastair Reid, and Malcolm Wallace.
