Dodona may be unavailable on July 11th - Due to works at the UGent data centre on Friday July 11th, Dodona may be temporarily unavailable. We apologise for the inconvenience.
Warning! It seems that you are using Dodona within another webpage, so not everything may work properly. Let your teacher know so that he can solve the problem by adjusting a setting in the learning environment. In the meantime, you can click this link to open Dodona in a new window.
Evaluator
Sign in to test your solution.
-- Expressions
--------------
data Exp = Const Int
| Add Exp Exp
| Sub Exp Exp
| Mul Exp Exp
deriving Show
eval :: Exp -> Int
eval = undefined
-- Stack machine
----------------
data Inst = IPush Int
| IAdd
| ISub
| IMul
deriving Show
type Prog = [Inst]
type Stack = [Int]
run :: Stack -> Prog -> Stack
run = undefined
-- Expression Compiler
----------------------
compile :: Exp -> Prog
compile = undefined
You can submit as many times as you like. Only your latest submission will be taken into account.
Sign in to test your solution.