Safe Haskell | None |
---|---|
Language | Haskell2010 |
C code generator. This module can convert a correct ImpCode program to an equivalent C program. The C code is strictly sequential, but can handle the full Futhark language.
Synopsis
- compileProg :: MonadFreshNames m => Prog ExplicitMemory -> m (Either InternalError CParts)
- data CParts = CParts {}
- asLibrary :: CParts -> (String, String)
- asExecutable :: CParts -> String
Documentation
compileProg :: MonadFreshNames m => Prog ExplicitMemory -> m (Either InternalError CParts) Source #
The result of compilation to C is four parts, which can be put together in various ways. The obvious way is to concatenate all of them, which yields a CLI program. Another is to compile the library part by itself, and use the header file to call into it.
asExecutable :: CParts -> String Source #
As executable with command-line interface.