from Data.Monoid import class Semigroup, class Monoid
import mTask
+:: MTaskMSGRecv
+ = MTPub Int String
+ | MTMessage String
+ | MTEmpty
+
+:: MTaskMSGSend
+ = MTSds Int String
+ | MTTask Int String
+ | MTUpd Int String
+
+instance toString MTaskMSGRecv
+instance toString MTaskMSGSend
+encode :: MTaskMSGSend -> String
+decode :: String -> MTaskMSGRecv
+
:: BC
= BCNop
| BCLab Int
instance boolExpr ByteCode
instance analogIO ByteCode
instance digitalIO ByteCode
-instance If ByteCode Stmt Stmt Stmt
-instance If ByteCode Stmt e Stmt
-instance If ByteCode Stmt Stmt e
-instance If ByteCode x y Expr
+//instance If ByteCode Stmt Stmt Stmt
+//instance If ByteCode e Stmt Stmt
+//instance If ByteCode Stmt e Stmt
+instance If ByteCode x y Stmt
instance IF ByteCode
instance noOp ByteCode
instance seq ByteCode
instance serial ByteCode
-getSDSBytes :: BCState -> String
-getTaskBytes :: Int String -> String
+//pub :: (ByteCode a b) -> ByteCode a b
+
+toMessages :: Int (String, BCState) -> ([MTaskMSGSend], BCState)
+toSDSUpdate :: Int Int -> [MTaskMSGSend]
toByteVal :: BC -> [Char]
toReadableByteCode :: (ByteCode a b) -> (String, BCState)