X-Git-Url: https://git.martlubbers.net/?a=blobdiff_plain;f=miTask.icl;h=62b6ce1738c7e51720e05c0b9fed6c0de29d605f;hb=c23eb53a452d0aea1a26ba60fe8ce9abcb77ea02;hp=ab37901f54abd219f453353f0c113c478792af37;hpb=7edf1780ae3b91d9136db2d94b25e88d64896645;p=mTask.git diff --git a/miTask.icl b/miTask.icl index ab37901..62b6ce1 100644 --- a/miTask.icl +++ b/miTask.icl @@ -3,7 +3,6 @@ module miTask import StdDebug, StdMisc from Text import class Text(concat,join,split), instance Text String -from Control.Monad import mapM import iTasks import mTask @@ -12,10 +11,10 @@ derive class iTask MTaskMessage Start :: *World -> *World Start world = startEngine ( - withShared ([], False, [], False) (\ch-> - enterInformation "Port Number?" [] >>= \port->mTaskTask port ch - )) world -//Start world = startEngine mTaskTask world + enterInformation "Port Number?" [] + >>= \port->withShared ([], False, [], False) (mTaskTask port) + ) world +Start world = startEngine mTaskTask world mTaskTask :: Int (Shared ([MTaskMessage],Bool,[MTaskMessage],Bool)) -> Task () mTaskTask port ch = @@ -32,13 +31,20 @@ mTaskTask port ch = f [MTEmpty:xs] = f xs f [x:xs] = [toString x:f xs] - msgs = toMessages 500 (toRealByteCode (unMain bc)) + msgs + | not (trace_tn (fst (toReadableByteCode (unMain bc)))) = undef + = toMessages 500 (toRealByteCode (unMain bc)) bc :: Main (ByteCode Int Stmt) - bc = sds \x=0 In {main = x =. x +. lit 1 :. pub x} + bc = sds \x=1 In {main = + If (x ==. lit 3) + (x =. lit 1) + (x =. x +. lit 1) :. pub x} sendMsg :: [MTaskMessage] (Shared ([MTaskMessage],Bool,[MTaskMessage],Bool)) -> Task () -sendMsg m ch = upd (\(r,rs,s,ss)->(r,rs,s ++ m,ss)) ch @! () +sendMsg m ch +| not (trace_tn (join "\n" (map (toString o toJSON) m))) = undef += upd (\(r,rs,s,ss)->(r,rs,s ++ m,ss)) ch @! () syncNetworkChannel :: String Int String (String -> m) (n -> String) (Shared ([m],Bool,[n],Bool)) -> Task () | iTask m & iTask n syncNetworkChannel server port msgSeparator decodeFun encodeFun channel