🐛 fixed a lil bug
This commit is contained in:
@ -32,10 +32,10 @@ printExp (Mul e1 e2) = "("++(printExp e1)++" * "++(printExp e2)++")"
|
|||||||
printExp (Sub e1 e2) = "("++(printExp e1)++" - "++(printExp e2)++")"
|
printExp (Sub e1 e2) = "("++(printExp e1)++" - "++(printExp e2)++")"
|
||||||
printExp (Div e1 e2) = "("++(printExp e1)++" / "++(printExp e2)++")"
|
printExp (Div e1 e2) = "("++(printExp e1)++" / "++(printExp e2)++")"
|
||||||
printExp (Pow e1 e2) = "("++(printExp e1)++" ** "++(printExp e2)++")"
|
printExp (Pow e1 e2) = "("++(printExp e1)++" ** "++(printExp e2)++")"
|
||||||
|
printExp (Eql e1 e2) = "("++(printExp e1)++" == "++(printExp e2)++")"
|
||||||
printExp (If e1 e2 e3) = "(if "++(printExp e1)++" then "++(printExp e2)++" else "++(printExp e3)++")"
|
printExp (If e1 e2 e3) = "(if "++(printExp e1)++" then "++(printExp e2)++" else "++(printExp e3)++")"
|
||||||
printExp (Var var) = var
|
printExp (Var var) = var
|
||||||
printExp (Let var e1 e2) = "(let "++var++" = "++(printExp e1)++" in "++(printExp e2)++")"
|
printExp (Let var e1 e2) = "(let "++var++" = "++(printExp e1)++" in "++(printExp e2)++")"
|
||||||
printExp (Lambda var e) = "(\\"++var++" -> "++(printExp e)++")"
|
printExp (Lambda var e) = "(\\"++var++" -> "++(printExp e)++")"
|
||||||
printExp (Apply e1 e2) = "("++(printExp e1)++" "++(printExp e2)++")"
|
printExp (Apply e1 e2) = "("++(printExp e1)++" "++(printExp e2)++")"
|
||||||
printExp (TryCatch e1 e2) = "(try "++(printExp e1)++" catch "++(printExp e2)++")"
|
printExp (TryCatch e1 e2) = "(try "++(printExp e1)++" catch "++(printExp e2)++")"
|
||||||
printExp _ = "error"
|
|
||||||
|
@ -23,6 +23,9 @@ tests =
|
|||||||
printExp (Div (CstInt 1) (CstInt 9999)) @?= "(1 / 9999)",
|
printExp (Div (CstInt 1) (CstInt 9999)) @?= "(1 / 9999)",
|
||||||
testCase "Pow" $
|
testCase "Pow" $
|
||||||
printExp (Pow (CstInt 1) (CstInt 9999)) @?= "(1 ** 9999)",
|
printExp (Pow (CstInt 1) (CstInt 9999)) @?= "(1 ** 9999)",
|
||||||
|
testCase "Eql" $
|
||||||
|
printExp (Eql (CstInt 2) (CstInt 3))
|
||||||
|
@?= "(2 == 3)",
|
||||||
testCase "If" $
|
testCase "If" $
|
||||||
printExp (If (CstBool True) (CstInt 2) (CstInt 3))
|
printExp (If (CstBool True) (CstInt 2) (CstInt 3))
|
||||||
@?= "(if True then 2 else 3)",
|
@?= "(if True then 2 else 3)",
|
||||||
|
Reference in New Issue
Block a user