Module FlatCurry.Typed.Build

Some operations to construct type-annotated FlatCurry programs.

Author: Michael Hanus

Version: May 2021

Summary of exported operations:

baseType :: (String,String) -> TypeExpr  Deterministic 
A base FlatCurry type.
unitType :: TypeExpr  Deterministic 
charType :: TypeExpr  Deterministic 
boolType :: TypeExpr  Deterministic 
listType :: TypeExpr -> TypeExpr  Deterministic 
Constructs a list type from an element type.
stringType :: TypeExpr  Deterministic 
tupleType :: [TypeExpr] -> TypeExpr  Deterministic 
Constructs a tuple type from list of component types.
tupleCons :: Int -> (String,String)  Deterministic 
Generates an n-ary tuple constructor (only meaningful for n>1).
tupleExpr :: [AExpr TypeExpr] -> AExpr TypeExpr  Deterministic 
Constructs a tuple expression.
string2TAFCY :: String -> AExpr TypeExpr  Deterministic 

Exported operations:

baseType :: (String,String) -> TypeExpr  Deterministic 

A base FlatCurry type.

Further infos:
  • solution complete, i.e., able to compute all solutions

unitType :: TypeExpr  Deterministic 

Further infos:
  • solution complete, i.e., able to compute all solutions

charType :: TypeExpr  Deterministic 

Further infos:
  • solution complete, i.e., able to compute all solutions

boolType :: TypeExpr  Deterministic 

Further infos:
  • solution complete, i.e., able to compute all solutions

listType :: TypeExpr -> TypeExpr  Deterministic 

Constructs a list type from an element type.

Further infos:
  • solution complete, i.e., able to compute all solutions

stringType :: TypeExpr  Deterministic 

Further infos:
  • solution complete, i.e., able to compute all solutions

tupleType :: [TypeExpr] -> TypeExpr  Deterministic 

Constructs a tuple type from list of component types.

tupleCons :: Int -> (String,String)  Deterministic 

Generates an n-ary tuple constructor (only meaningful for n>1).

tupleExpr :: [AExpr TypeExpr] -> AExpr TypeExpr  Deterministic 

Constructs a tuple expression.

string2TAFCY :: String -> AExpr TypeExpr  Deterministic 

Further infos:
  • solution complete, i.e., able to compute all solutions