Safe Haskell | None |
---|---|
Language | Haskell2010 |
Low-level compilation parts. Look at Futhark.Compiler for a more high-level API.
Synopsis
- readLibraryWithBasis :: (MonadError CompilerError m, MonadIO m) => Basis -> [FilePath] -> m (Warnings, Imports, VNameSource)
- readImports :: (MonadError CompilerError m, MonadIO m) => Basis -> [ImportName] -> m (Warnings, Imports, VNameSource)
- type Imports = [(String, FileModule)]
- data FileModule = FileModule {}
- data Warnings
- data Basis = Basis {}
- emptyBasis :: Basis
Documentation
readLibraryWithBasis :: (MonadError CompilerError m, MonadIO m) => Basis -> [FilePath] -> m (Warnings, Imports, VNameSource) Source #
Read Futhark files from some basis, and printing log messages if the first parameter is True.
readImports :: (MonadError CompilerError m, MonadIO m) => Basis -> [ImportName] -> m (Warnings, Imports, VNameSource) Source #
Read and type-check Futhark imports (no .fut
extension; may
refer to baked-in futlib). This is an exotic operation that
probably only makes sense in an interactive environment.
type Imports = [(String, FileModule)] Source #
A mapping from import names to imports. The ordering is significant.
data FileModule Source #
The result of type checking some file. Can be passed to further invocations of the type checker.
The warnings produced by the compiler. The Show
instance
produces a human-readable description.
Pre-typechecked imports, including a starting point for the name source.
Basis | |
|
emptyBasis :: Basis Source #
A basis that contains no imports, and has a properly initialised name source.