X-Git-Url: https://git.martlubbers.net/?a=blobdiff_plain;f=mTaskSimulation.dcl;h=b3870cfcd3bd5fa382a47b104acccfdbeae5c44c;hb=a81623aa9629a3c5c8f8bf920e494a596b30c4b7;hp=525498f7d30447084af70c05901586863d5fdefe;hpb=0d7dc6966d2f428cd7543708e220aa4315d64978;p=mTask.git diff --git a/mTaskSimulation.dcl b/mTaskSimulation.dcl index 525498f..b3870cf 100644 --- a/mTaskSimulation.dcl +++ b/mTaskSimulation.dcl @@ -2,10 +2,14 @@ definition module mTaskSimulation import mTask +from Generics.gdynamic import :: Dyn, class dyn, generic toGenDynamic, generic fromGenDynamic +from GenPrint import class PrintOutput, :: PrintState +from Data.Maybe import :: Maybe +from iTasks import class iTask, generic gEditor, generic gDefault, generic gText, generic JSONEncode, generic JSONDecode, :: Task, :: Editor, :: JSONNode, :: TextFormat + :: Display a = Display a derive class iTask Display -instance zero State` eval :: (Main (Eval t p)) -> [String] | toString t :: State` = @@ -81,8 +85,6 @@ instance writePinD AnalogPin // ----- Interactive Simulation ----- // -derive class iTask DigitalPin, AnalogPin, Dyn, StateInterface, DisplayVar, Pin - simulate :: (Main (Eval a p)) -> Task () toView :: State` -> StateInterface mergeView :: State` StateInterface -> State` @@ -111,6 +113,6 @@ class stringQuotes t | type t :: (Code t p) -> Code t p instance stringQuotes String instance stringQuotes t -derive toGenDynamic (), MTask, DigitalPin, AnalogPin, Pin, [], Long //, Servo -derive fromGenDynamic (), MTask, DigitalPin, AnalogPin, Pin, [], Long //, Servo +derive toGenDynamic (), MTask, DigitalPin, AnalogPin, Pin, [], Long, UserLED //, Servo +derive fromGenDynamic (), MTask, DigitalPin, AnalogPin, Pin, [], Long, UserLED //, Servo instance == ()