| Portability | portable |
|---|---|
| Stability | experimental |
| Maintainer | eb@dcs.st-and.ac.uk |
Epic.Compiler
Description
Public interface for Epigram Supercombinator Compiler
- data CompileOptions
- = KeepC
- | Trace
- | ShowBytecode
- | ShowParseTree
- | MakeHeader FilePath
- | GCCOpt String
- | Debug
- | Checking Int
- | ExternalMain
- | MainInc FilePath
- | LinkObj FilePath
- compile :: FilePath -> FilePath -> Maybe FilePath -> IO ()
- compileOpts :: FilePath -> FilePath -> Maybe FilePath -> [CompileOptions] -> IO ()
- compileDecls :: FilePath -> Maybe FilePath -> [Decl] -> [CompileOptions] -> IO ()
- link :: [FilePath] -> FilePath -> [CompileOptions] -> IO ()
Documentation
data CompileOptions Source
(Debugging) options to give to compiler
Constructors
| KeepC | Keep intermediate C file |
| Trace | Generate trace at run-time (debug) |
| ShowBytecode | Show generated code |
| ShowParseTree | Show parse tree |
| MakeHeader FilePath | Output a .h file too |
| GCCOpt String | Extra GCC option |
| Debug | Generate debug info |
| Checking Int | Checking level (0 none) |
| ExternalMain | main is defined externally (in C) |
| MainInc FilePath | File to #include in main program |
| LinkObj FilePath | .o file to link with |
Instances
Arguments
| :: FilePath | Input file name |
| -> FilePath | Output file name |
| -> Maybe FilePath | Interface (.ei) file name, if desired |
| -> IO () |
Compile a source file in supercombinator language to a .o