repositories
/
mTask.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
make lib compilable
[mTask.git]
/
mTaskInterpret.dcl
diff --git
a/mTaskInterpret.dcl
b/mTaskInterpret.dcl
index
70dc6ad
..
221c8a4
100644
(file)
--- a/
mTaskInterpret.dcl
+++ b/
mTaskInterpret.dcl
@@
-6,13
+6,18
@@
from Data.Monoid import class Semigroup, class Monoid
import mTask
:: MTaskMSGRecv
import mTask
:: MTaskMSGRecv
- = MTPub Int String
+ = MTTaskAck Int
+ | MTTaskDelAck Int
+ | MTSDSAck Int
+ | MTSDSDelAck Int
+ | MTPub Int String
| MTMessage String
| MTEmpty
:: MTaskMSGSend
| MTMessage String
| MTEmpty
:: MTaskMSGSend
- = MTSds Int String
- | MTTask Int String
+ = MTTask Int String
+ | MTTaskDel Int
+ | MTSds Int String
| MTUpd Int String
instance toString MTaskMSGRecv
| MTUpd Int String
instance toString MTaskMSGRecv
@@
-49,6
+54,9
@@
decode :: String -> MTaskMSGRecv
| BCJmp Int
| BCJmpT Int
| BCJmpF Int
| BCJmp Int
| BCJmpT Int
| BCJmpF Int
+ //UserLED
+ | BCLedOn [Char]
+ | BCLedOff [Char]
//Serial
| BCSerialAvail
| BCSerialPrint
//Serial
| BCSerialAvail
| BCSerialPrint
@@
-80,12
+88,14
@@
instance toByteCode Char
instance toByteCode String
instance toByteCode Long
instance toByteCode Button
instance toByteCode String
instance toByteCode Long
instance toByteCode Button
+instance toByteCode UserLED
instance toChar Pin
instance arith ByteCode
instance boolExpr ByteCode
instance analogIO ByteCode
instance digitalIO ByteCode
instance toChar Pin
instance arith ByteCode
instance boolExpr ByteCode
instance analogIO ByteCode
instance digitalIO ByteCode
+instance userLed ByteCode
//instance If ByteCode Stmt Stmt Stmt
//instance If ByteCode e Stmt Stmt
//instance If ByteCode Stmt e Stmt
//instance If ByteCode Stmt Stmt Stmt
//instance If ByteCode e Stmt Stmt
//instance If ByteCode Stmt e Stmt
@@
-105,4
+115,4
@@
toSDSUpdate :: Int Int -> [MTaskMSGSend]
toByteVal :: BC -> [Char]
toReadableByteCode :: (ByteCode a b) -> (String, BCState)
toByteVal :: BC -> [Char]
toReadableByteCode :: (ByteCode a b) -> (String, BCState)
-toRealByteCode :: (ByteCode a b) -> (String, BCState)
+toRealByteCode :: (ByteCode a b)
BCState
-> (String, BCState)