spec :: Spec
spec = describe "untyped test" $
        it "should evaluate untyped expressions" $ do
           r1 <- toplevel ["(set fac (fn (n) (if (eq n 1) 1 (* n (fac (- n 1))))))", "(fac 5)"]
           r1 `shouldBe` Right "120"
           r2 <- toplevel ["(set fib (fn (n) (if (eq n 0) 1 (if (eq n 1) 1 (+ (fib (- n 1)) (fib (- n 2)))))))", "(fib 5)"]
           r2 `shouldBe` Right "8"
spec :: Spec
spec = describe "untyped test" $
        it "should evaluate untyped expressions" $ do
           r1 <- toplevel ["(set fac (fn (n) (if (eq n 1) 1 (* n (fac (- n 1))))))", "(fac 5)"]
           r1 `shouldBe` Right "120"
           r2 <- toplevel ["(set fib (fn (n) (if (eq n 0) 1 (if (eq n 1) 1 (+ (fib (- n 1)) (fib (- n 2)))))))", "(fib 5)"]
           r2 `shouldBe` Right "8"
spec = describe "untyped test" $
        it "should evaluate untyped expressions" $ do
           r1 <- toplevel ["(set fac (fn (n) (if (eq n 1) 1 (* n (fac (- n 1))))))", "(fac 5)"]
           r1 `shouldBe` Right "120"
           r2 <- toplevel ["(set fib (fn (n) (if (eq n 0) 1 (if (eq n 1) 1 (+ (fib (- n 1)) (fib (- n 2)))))))", "(fib 5)"]
           r2 `shouldBe` Right "8"