Some operations to construct type-annotated FlatCurry programs.
Author: Michael Hanus
Version: May 2021
baseType
:: (String,String) -> TypeExpr A base FlatCurry type. |
(~>)
:: TypeExpr -> TypeExpr -> TypeExpr A function type. |
unitType
:: TypeExpr Type ()
as a FlatCurry type.
|
charType
:: TypeExpr Type Char
as a FlatCurry type.
|
boolType
:: TypeExpr Type Bool
as a FlatCurry type.
|
listType
:: TypeExpr -> TypeExpr Constructs a list type from an element type. |
stringType
:: TypeExpr Type String
as a FlatCurry type.
|
tupleType
:: [TypeExpr] -> TypeExpr Constructs a tuple type from list of component types. |
tupleCons
:: Int -> (String,String) Generates an n -ary tuple constructor (only meaningful for n>1 ).
|
tupleExpr
:: [AExpr TypeExpr] -> AExpr TypeExpr Constructs a tuple expression. |
string2TAFCY
:: String -> AExpr TypeExpr |
A base FlatCurry type.
|
A function type.
|
Type
|
Type
|
Type
|
Constructs a list type from an element type.
|
Type
|
Generates an |
|