repositories
/
mTask.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
makefile
[mTask.git]
/
mTaskSimulation.dcl
diff --git
a/mTaskSimulation.dcl
b/mTaskSimulation.dcl
index
496bd52
..
16ceee4
100644
(file)
--- a/
mTaskSimulation.dcl
+++ b/
mTaskSimulation.dcl
@@
-1,12
+1,16
@@
definition module mTaskSimulation
definition module mTaskSimulation
+import iTasks.API.Core.Types
import mTask
import mTask
-instance zero State
+//:: Display a = Display a
+
+//derive class iTask Display
+//instance zero State`
eval :: (Main (Eval t p)) -> [String] | toString t
eval :: (Main (Eval t p)) -> [String] | toString t
-:: State =
- { tasks :: [(Int, State
->State
)]
+:: State
`
=
+ { tasks :: [(Int, State
`->State`
)]
, store :: [Dyn]
, dpins :: [(DigitalPin, Bool)]
, apins :: [(AnalogPin, Int)]
, store :: [Dyn]
, dpins :: [(DigitalPin, Bool)]
, apins :: [(AnalogPin, Int)]
@@
-14,11
+18,11
@@
eval :: (Main (Eval t p)) -> [String] | toString t
, millis:: Int
}
, millis:: Int
}
-//:: TaskSim :== (Int, State
->State
)
-:: Eval t p = E ((ReadWrite t) State
-> (t, State
))
-toS2S :: (Eval t p) -> (State
->State
)
+//:: TaskSim :== (Int, State
`->State`
)
+:: Eval t p = E ((ReadWrite t) State
` -> (t, State`
))
+toS2S :: (Eval t p) -> (State
`->State`
)
-unEval :: (Eval t p) -> ((ReadWrite t) State
-> (t, State
))
+unEval :: (Eval t p) -> ((ReadWrite t) State
` -> (t, State`
))
:: ReadWrite t = Rd | Wrt t | Updt (t->t)
:: ReadWrite t = Rd | Wrt t | Updt (t->t)
@@
-66,13
+70,13
@@
instance arg (Eval t p, Eval u q, Eval v r, Eval w s) | type t & type u & type v
instance + String
readPinA :: AnalogPin [(AnalogPin, Int)] -> Int
instance + String
readPinA :: AnalogPin [(AnalogPin, Int)] -> Int
-writePinA :: AnalogPin Int State
-> State
+writePinA :: AnalogPin Int State
` -> State`
class readPinD p :: p [(DigitalPin,Bool)] [(AnalogPin,Int)] -> Bool
instance readPinD DigitalPin
instance readPinD AnalogPin
class readPinD p :: p [(DigitalPin,Bool)] [(AnalogPin,Int)] -> Bool
instance readPinD DigitalPin
instance readPinD AnalogPin
-class writePinD p :: p Bool State
-> State
+class writePinD p :: p Bool State
` -> State`
instance writePinD DigitalPin
instance writePinD AnalogPin
instance writePinD DigitalPin
instance writePinD AnalogPin
@@
-81,8
+85,8
@@
instance writePinD AnalogPin
derive class iTask DigitalPin, AnalogPin, Dyn, StateInterface, DisplayVar, Pin
simulate :: (Main (Eval a p)) -> Task ()
derive class iTask DigitalPin, AnalogPin, Dyn, StateInterface, DisplayVar, Pin
simulate :: (Main (Eval a p)) -> Task ()
-toView :: State -> StateInterface
-mergeView :: State
StateInterface -> State
+toView :: State
`
-> StateInterface
+mergeView :: State
` StateInterface -> State`
:: StateInterface =
{ serialOut :: Display [String]
, analogPins :: [(AnalogPin, Int)]
:: StateInterface =
{ serialOut :: Display [String]
, analogPins :: [(AnalogPin, Int)]
@@
-102,7
+106,7
@@
fromDisplayVar :: DisplayVar Dyn -> Dyn
| LCD16x2 String String
| DisplayVar [String]
| LCD16x2 String String
| DisplayVar [String]
-step` :: State
-> State
+step` :: State
` -> State`
class stringQuotes t | type t :: (Code t p) -> Code t p
instance stringQuotes String
class stringQuotes t | type t :: (Code t p) -> Code t p
instance stringQuotes String