Initial try, maybe I'll need a state
[mTask.git] / mTaskInterpret.dcl
index 32e7b9b..5a80189 100644 (file)
@@ -16,8 +16,23 @@ import mTask
        | BCSub
        | BCMul
        | BCDiv
+       //Binary Bool ops
+       | BCAnd
+       | BCOr
+       | BCEq
+       | BCNeq
+       | BCLes
+       | BCGre
+       | BCLeq
+       | BCGeq
+       //Conditionals and jumping
+       | BCJmp Int
+       | BCJmpT Int
+       | BCJmpF Int
 
-:: ByteCode a p = BC ((ReadWrite (ByteCode a Expr)) BCState -> ([BC], BCState))
+//:: ByteCode a p = BC (BCState -> ([BC], BCState))
+:: ByteCode a p = BC [BC]
+//:: ByteCode a p = BC ((ReadWrite (ByteCode a Expr)) BCState -> ([BC], BCState))
 :: BCState = {
                a::()
        }