Module FlatCurry.Typed.Read

Some operations to read type-annotated FlatCurry programs.

Author: Michael Hanus

Version: April 2019

Summary of exported operations:

readSimpTypedFlatCurryWithSpec :: Options -> String -> IO (AProg TypeExpr)   
Reads a typed FlatCurry program together with a possible _SPEC program (containing further contracts) and simplify some expressions (see module FlatCurry.Typed.Simplify).
readTypedFlatCurryWithSpec :: Options -> String -> IO (AProg TypeExpr)   
Reads a typed FlatCurry program together with a possible _SPEC program (containing further contracts).
getAllFunctions :: IORef VState -> [AFuncDecl TypeExpr] -> [(String,String)] -> IO [AFuncDecl TypeExpr]   
Extract all user-defined typed FlatCurry functions that might be called by a given list of functions.

Exported operations:

readSimpTypedFlatCurryWithSpec :: Options -> String -> IO (AProg TypeExpr)   

Reads a typed FlatCurry program together with a possible _SPEC program (containing further contracts) and simplify some expressions (see module FlatCurry.Typed.Simplify).

readTypedFlatCurryWithSpec :: Options -> String -> IO (AProg TypeExpr)   

Reads a typed FlatCurry program together with a possible _SPEC program (containing further contracts).

getAllFunctions :: IORef VState -> [AFuncDecl TypeExpr] -> [(String,String)] -> IO [AFuncDecl TypeExpr]   

Extract all user-defined typed FlatCurry functions that might be called by a given list of functions.