1 // Mart Lubbers s4109503, Camil Staps s4498062
3 definition module RefactorX
5 from StdClass import class toString
8 :: Expr = NR Int | VAR Name | OP Expr Operator Expr | LET Name Expr Expr
10 :: Operator = PLUS | MIN | MUL | DIV
11 :: Val = Result Int | Undef
14 instance toString Expr
15 free :: Expr -> [Name]
16 remove_unused_lets :: Expr -> Expr