diff options
-rw-r--r-- | fp2/week45/camil/RefactorX.icl | 12 | ||||
-rw-r--r-- | fp2/week45/mart/RefactorX.dcl | 2 | ||||
-rw-r--r-- | fp2/week45/mart/RefactorX.icl | 2 | ||||
-rw-r--r-- | fp2/week45/week45.tar.gz | bin | 0 -> 1091 bytes |
4 files changed, 10 insertions, 6 deletions
diff --git a/fp2/week45/camil/RefactorX.icl b/fp2/week45/camil/RefactorX.icl index 9cbb6d7..a7bf909 100644 --- a/fp2/week45/camil/RefactorX.icl +++ b/fp2/week45/camil/RefactorX.icl @@ -58,19 +58,19 @@ remove_unused_lets x = x // evaluator met tabel van naam-waarde paren:
eval :: Expr -> Val
-eval e = fst (eval` e [])
+eval e = eval` e []
where
- eval` :: Expr [(Name, Val)] -> (Val, [(Name, Val)])
- eval` (NR n) vs = (Result n, [])
- eval` (VAR s) vs = (find s vs, [])
+ eval` :: Expr [(Name, Val)] -> Val
+ eval` (NR n) vs = Result n
+ eval` (VAR s) vs = find s vs
where
find :: Name [(Name, Val)] -> Val
find _ [] = Undef
find s [(t,v):vs]
| s == t = v
| otherwise = find s vs
- eval` (LET s e1 e2) vs = eval` e2 [(s,fst (eval` e1 vs)):vs]
- eval` (OP e1 o e2) vs = (op o (fst (eval` e1 vs)) (fst (eval` e2 vs)), [])
+ eval` (LET s e1 e2) vs = eval` e2 [(s,eval` e1 vs):vs]
+ eval` (OP e1 o e2) vs = op o (eval` e1 vs) (eval` e2 vs)
where
op :: Operator Val Val -> Val
op _ Undef _ = Undef
diff --git a/fp2/week45/mart/RefactorX.dcl b/fp2/week45/mart/RefactorX.dcl index e7fef07..393c097 100644 --- a/fp2/week45/mart/RefactorX.dcl +++ b/fp2/week45/mart/RefactorX.dcl @@ -1,3 +1,5 @@ +// Mart Lubbers s4109503, Camil Staps s4498062
+
definition module RefactorX
from StdClass import class toString
diff --git a/fp2/week45/mart/RefactorX.icl b/fp2/week45/mart/RefactorX.icl index 1334aac..c74df08 100644 --- a/fp2/week45/mart/RefactorX.icl +++ b/fp2/week45/mart/RefactorX.icl @@ -1,3 +1,5 @@ +// Mart Lubbers s4109503, Camil Staps s4498062
+
implementation module RefactorX
import StdEnv
diff --git a/fp2/week45/week45.tar.gz b/fp2/week45/week45.tar.gz Binary files differnew file mode 100644 index 0000000..690e838 --- /dev/null +++ b/fp2/week45/week45.tar.gz |