diff options
author | Camil Staps | 2016-02-02 19:24:50 +0100 |
---|---|---|
committer | Camil Staps | 2016-02-02 19:24:50 +0100 |
commit | a7d7542dc646a5fd124ef71e71ce260889f1701b (patch) | |
tree | 04ed89503bbb3cc9933273a1326a53ca724c3492 /1415/files/practicum/RefactorX.dcl | |
parent | week6 camil: working positioning of lines by putting empties at left and righ... (diff) |
Diffstat (limited to '1415/files/practicum/RefactorX.dcl')
-rw-r--r-- | 1415/files/practicum/RefactorX.dcl | 18 |
1 files changed, 18 insertions, 0 deletions
diff --git a/1415/files/practicum/RefactorX.dcl b/1415/files/practicum/RefactorX.dcl new file mode 100644 index 0000000..3ddc8a4 --- /dev/null +++ b/1415/files/practicum/RefactorX.dcl @@ -0,0 +1,18 @@ +definition module RefactorX
+
+import StdEnv
+
+:: Expr = NR Int
+ | VAR Name
+ | OP Expr Operator Expr
+ | LET Name Expr Expr
+:: Name :== String
+:: Operator = PLUS | MIN | MUL | DIV
+:: Val = Result Int | Undef
+
+from StdClass import class toString
+
+instance toString Expr
+free :: Expr -> [Name]
+remove_unused_lets :: Expr -> Expr
+eval :: Expr -> Val
|