14 lines
268 B
Haskell
14 lines
268 B
Haskell
module Hutton where
|
|
|
|
data Expr
|
|
= Lit Integer
|
|
| Add Expr Expr
|
|
|
|
eval :: Expr -> Integer
|
|
eval (Lit x) = x
|
|
eval (Add x y) = (eval x) + (eval y)
|
|
|
|
printExpr :: Expr -> String
|
|
printExpr (Lit x) = show x
|
|
printExpr (Add x y) = (printExpr x) ++ " + " ++ (printExpr y)
|