revert back to old itasks, add sds support in bytecode
[mTask.git] / mTask.dcl
index 6613e2a..9207cb4 100644 (file)
--- a/mTask.dcl
+++ b/mTask.dcl
@@ -14,11 +14,11 @@ todo:
        imporove setp: >>*.
 */
 
-//import iTasks
+import iTasks
+
 import iTasks._Framework.Generic
-import iTasks._Framework.Task
+from iTasks._Framework.Task import :: Task
 import StdClass
-from iTasks.API.Core.Types import :: Display
 import gdynamic, gCons, GenEq, StdMisc, StdArray
 
 import mTaskCode, mTaskSimulation, mTaskInterpret
@@ -61,7 +61,7 @@ instance == MTask
 unMain :: (Main x) -> x
 
 class arith v where
-  lit :: t -> v t Expr | toCode t
+  lit :: t -> v t Expr | toCode t & toByteCode t
   (+.) infixl 6 :: (v t p) (v t q) -> v t Expr | type, +, zero t & isExpr p & isExpr q //& toExpr2 p & toExpr2 q
   (-.) infixl 6 :: (v t p) (v t q) -> v t Expr | type, -, zero t & isExpr p & isExpr q //& toExpr2 p & toExpr2 q
   (*.) infixl 7 :: (v t p) (v t q) -> v t Expr | type, *, zero, one t & isExpr p & isExpr q //& toExpr2 p & toExpr2 q
@@ -86,7 +86,7 @@ class var2 v where
   var2 :: t ((v t Upd)->(Main (v c s))) -> (Main (v c s)) | type, toCode t
   con2 :: t ((v t Expr)  ->(Main (v c s))) -> (Main (v c s)) | type t
 class sds v where
-  sds :: ((v t Upd)->In t (Main (v c s))) -> (Main (v c s)) | type, toCode t
+  sds :: ((v t Upd)->In t (Main (v c s))) -> (Main (v c s)) | type, toByteCode, toCode t
   con :: ((v t Expr)  ->In t (Main (v c s))) -> (Main (v c s)) | type t
 class seq v where
   (>>=.) infixr 0 :: (v t p) ((v t Expr) -> (v u q)) -> (v u Stmt) | type t & type u
@@ -182,7 +182,7 @@ instance typeSelector a
 
 :: In a b = In infix 0 a b
 
-read` :: Int (ReadWrite a) State -> (a,State) | dyn a
+read` :: Int (ReadWrite a) State` -> (a,State`) | dyn a
 
 // ----- long ----- //