This library contains operations to transform FlatCurry programs into string representations, either in a FlatCurry format or in a Curry-like syntax.
This library contains
showFlatProg
, showFlatType
, showFlatFunc
)
showCurryType
, showCurryExpr
,...).
Author: Michael Hanus
Version: December 2020
showFlatProg
:: Prog -> String
Shows a FlatCurry program term as a string (with some pretty printing). |
showFlatType
:: TypeDecl -> String
|
showFlatFunc
:: FuncDecl -> String
|
showCurryType
:: ((String,String) -> String) -> Bool -> TypeExpr -> String
Shows a FlatCurry type in Curry syntax. |
isClassContext
:: TypeExpr -> Maybe (String,TypeExpr)
Tests whether a FlatCurry type is a class context. |
showCurryExpr
:: ((String,String) -> String) -> Bool -> Int -> Expr -> String
Shows a FlatCurry expressions in (almost) Curry syntax. |
showCurryVar
:: Show a => a -> String
|
showCurryId
:: String -> String
Shows an identifier in Curry form. |
Shows a FlatCurry program term as a string (with some pretty printing). |
|
|
Shows a FlatCurry type in Curry syntax.
|
Tests whether a FlatCurry type is a class context. If it is the case, return the class name and the type parameter of the context. |
Shows a FlatCurry expressions in (almost) Curry syntax.
|
|
Shows an identifier in Curry form. Thus, operators are enclosed in brackets. |