diff options
Diffstat (limited to 'files/practicum/RefactorXX.dcl')
-rw-r--r-- | files/practicum/RefactorXX.dcl | 26 |
1 files changed, 0 insertions, 26 deletions
diff --git a/files/practicum/RefactorXX.dcl b/files/practicum/RefactorXX.dcl deleted file mode 100644 index 4b7748f..0000000 --- a/files/practicum/RefactorXX.dcl +++ /dev/null @@ -1,26 +0,0 @@ -definition module RefactorXX
-
-:: Expr = NR Int
- | VAR Name
- | OP Expr Operator Expr
- | LET Name Expr Expr
-:: Name :== String
-:: Operator = PLUS | MIN | MUL | DIV
-:: Val a = Result a | Undef
-
-class fail c :: c a
-class return c :: a -> c a
-class (>>=) infix 0 c :: (c a) (a -> c b) -> c b
-class Monad c | return, >>= c
-class MonadFail c | Monad, fail c
-
-instance fail [], Val
-instance return [], Val
-instance >>= [], Val
-
-from StdClass import class toString
-
-instance toString Expr
-free :: Expr -> [Name]
-remove_unused_lets :: Expr -> Expr
-eval :: Expr -> c Int | MonadFail c
|