This library defines I/O actions to read Curry programs and transform them into the FlatCurry representation.
Author: Michael Hanus, Finn Teegen
Version: November 2023
readFlatCurry
:: String -> IO Prog
I/O action which parses a Curry module and returns the corresponding FlatCurry program. |
readFlatCurryWithParseOptions
:: String -> FrontendParams -> IO Prog
I/O action which parses a Curry module with respect to some parser options and returns the corresponding FlatCurry program. |
flatCurryFileName
:: String -> String
Transforms a name of a Curry module (with or without suffix ".curry" or ".lcurry") into the name of the file containing the corresponding FlatCurry program. |
flatCurryIntName
:: String -> String
Transforms a name of a Curry module (with or without suffix ".curry" or ".lcurry") into the name of the file containing the corresponding FlatCurry program. |
readFlatCurryFile
:: String -> IO Prog
I/O action which reads a FlatCurry program from a file in .fcy
format.
|
readFlatCurryInt
:: String -> IO Prog
I/O action which returns the interface of a Curry module, i.e., a FlatCurry program containing only "Public" entities and function definitions without rules (i.e., external functions). |
readFlatCurryIntWithParseOptions
:: String -> FrontendParams -> IO Prog
I/O action which parses a Curry module with respect to some parser options and returns the FlatCurry interface of this program, i.e., a FlatCurry program containing only "Public" entities and function definitions without rules (i.e., external functions). |
writeFlatCurry
:: Prog -> IO ()
Writes a FlatCurry program into a file in .fcy
format.
|
writeFlatCurryFile
:: String -> Prog -> IO ()
Writes a FlatCurry program into a file in .fcy
format.
|
writeFCY
:: String -> Prog -> IO ()
Writes a FlatCurry program into a file in .fcy
format.
|
lookupFlatCurryFileInLoadPath
:: String -> IO (Maybe String)
Returns the name of the FlatCurry file of a module in the load path, if this file exists. |
getFlatCurryFileInLoadPath
:: String -> IO String
Returns the name of the FlatCurry file of a module in the load path, if this file exists. |
I/O action which parses a Curry module and returns the corresponding FlatCurry program. The argument is the module name (without suffix ".curry" or ".lcurry") and the result is a FlatCurry term representing this module.
If one wants to parse a Curry module in another directory,
e.g., the file > runModuleAction readFlatCurry examples/Mod.curry |
I/O action which parses a Curry module with respect to some parser options and returns the corresponding FlatCurry program. The argument is the module name (without suffix ".curry" or ".lcurry") and the result is a FlatCurry term representing this module.
|
Transforms a name of a Curry module (with or without suffix ".curry" or ".lcurry") into the name of the file containing the corresponding FlatCurry program. |
Transforms a name of a Curry module (with or without suffix ".curry" or ".lcurry") into the name of the file containing the corresponding FlatCurry program. |
I/O action which reads a FlatCurry program from a file in |
I/O action which returns the interface of a Curry module, i.e., a FlatCurry program containing only "Public" entities and function definitions without rules (i.e., external functions). The argument is the module name (without suffix ".curry" or ".lcurry") and the result is a FlatCurry term representing the interface of this module.
If one wants to parse a Curry module in another directory,
e.g., the file > runModuleAction readFlatCurryInt "examples/Mod.curry" |
I/O action which parses a Curry module with respect to some parser options and returns the FlatCurry interface of this program, i.e., a FlatCurry program containing only "Public" entities and function definitions without rules (i.e., external functions). The argument is the module name without suffix ".curry" (or ".lcurry") and the result is a FlatCurry term representing the interface of this module. |
Writes a FlatCurry program into a file in |
Writes a FlatCurry program into a file in |
Writes a FlatCurry program into a file in |
Returns the name of the FlatCurry file of a module in the load path, if this file exists. |
Returns the name of the FlatCurry file of a module in the load path, if this file exists. |