From 095970d60c7912d330c7c33501a1634c533eced1 Mon Sep 17 00:00:00 2001 From: tomsmeding Date: Mon, 18 Nov 2019 18:33:06 +0100 Subject: Refactor analyseValue, fix Let --- VM.hs | 1 + 1 file changed, 1 insertion(+) (limited to 'VM.hs') diff --git a/VM.hs b/VM.hs index a272829..1250c1e 100644 --- a/VM.hs +++ b/VM.hs @@ -111,6 +111,7 @@ vmRunBuiltin state "print" as = putStrLn (intercalate ", " (map printshow as)) > vmRunBuiltin state "=" [a, b] = return (if equalOp a b then RVNum 1 else RVNum 0, state) vmRunBuiltin state "<=" [RVNum a, RVNum b] = return (RVNum (fromEnum (a <= b)), state) vmRunBuiltin state "+" [RVNum a, RVNum b] = return (RVNum (a + b), state) +vmRunBuiltin state "+" [RVString a, RVString b] = return (RVString (a ++ b), state) vmRunBuiltin state "-" [RVNum a, RVNum b] = return (RVNum (a - b), state) vmRunBuiltin state "null?" [v] = return (RVNum (case v of { RVList [] -> 1; _ -> 0 }), state) vmRunBuiltin state "car" [RVList l] = case l of -- cgit v1.2.3-54-g00ecf