module TrycatDef where
data Stmt
= Assign String Expr — the String is for the LHS variable
| Try [Stmt] [Stmt] — 1st list for try-block, 2nd for catch-block
| Compound [Stmt] — begin … end
deriving (Eq, Show)
data Expr
= Add Operand Operand
| Div Operand Operand
deriving (Eq, Show)
data Operand = Var String | Lit Integer
deriving (Eq, Show)