@@ -6,18 +6,18 @@ import Effect.Random
66import Effect.StdIO
77
88data Expr = Var String
9− | Val Int
9+ | Val Integer
1010 | Add Expr Expr
11− | Random Int
11+ | Random Integer
1212
1313Env : Type
14−Env = List (String, Int)
14+Env = List (String, Integer)
1515
1616-- Evaluator : Type -> Type
1717-- Evaluator t
1818-- = Eff m [EXCEPTION String, RND, STATE Env] t
1919
20−eval : Expr -> Eff IO [EXCEPTION String, STDIO, RND, STATE Env] Int
20+eval : Expr -> Eff IO [EXCEPTION String, STDIO, RND, STATE Env] Integer
2121eval (Var x) = do vs <- get
2222 case lookup x vs of
2323 Nothing => raise ("No such variable " ++ x)
@@ -31,7 +31,7 @@ eval (Random upper) = do val <- rndInt 0 upper
3131testExpr : Expr
3232testExpr = Add (Add (Var "foo") (Val 42)) (Random 100)
3333
34−runEval : List (String, Int) -> Expr -> IO Int
34+runEval : List (String, Integer) -> Expr -> IO Integer
3535runEval args expr = run [(), (), 123456, args] (eval expr)
3636
3737main : IO ()