:: Op1 = UnNegation | UnMinus
:: Op2 = BiPlus | BiMinus | BiTimes | BiDivide | BiMod | BiEquals | BiLesser |
BiGreater | BiLesserEq | BiGreaterEq | BiUnEqual | BiAnd | BiOr | BiCons
-:: FunDecl = FunDecl String [String] FunType [VarDecl] [Stmt]
+:: FunDecl = FunDecl String [String] (Maybe FunType) [VarDecl] [Stmt]
:: FunType = FunType [Type] (Maybe Type)
:: FunCall = FunCall String [Expr]
:: Stmt