preamble :: AST -> AST
preamble (AST fd) = AST (pre ++ fd)
where
- pre = [] //[
- //FunDecl zero "1printstr" ["x"] Nothing [] [
-// IfStmt (FunExpr zero "isEmpty" [VarExpr zero (VarDef "x" [])] [])
-// []
-// [FunStmt "1printchar" [VarExpr zero (VarDef "x" [FieldHd])] []
-// ,FunStmt "1printstr" [VarExpr zero (VarDef "x" [FieldTl])] []]]]
+ pre = [
+ FunDecl zero "1printstr" ["x"] Nothing [] [
+ IfStmt (FunExpr zero "isEmpty" [VarExpr zero (VarDef "x" [])] [])
+ []
+ [FunStmt "1printchar" [VarExpr zero (VarDef "x" [FieldHd])] []
+ ,FunStmt "1printstr" [VarExpr zero (VarDef "x" [FieldTl])] []]]
+ ,
+ FunDecl zero "1printbool" ["x"] Nothing [] [
+ IfStmt (VarExpr zero (VarDef "x" []))
+ [FunStmt "1printstr" [makeStrExpr zero $ fromString "True"] []]
+ [FunStmt "1printstr" [makeStrExpr zero $ fromString "False"] []]
+ ]]
Start :: *World -> *World
Start w