make compilable
[mTask.git] / mTask.icl
index f0249c9..9d42d2f 100644 (file)
--- a/mTask.icl
+++ b/mTask.icl
@@ -14,8 +14,11 @@ todo:
        imporove setp: >>*.
 */
 
+import Generics.gCons
+import Generics.gdynamic
+
 import iTasks
-import gdynamic, gCons, GenEq, StdMisc, StdArray
+import GenEq, StdMisc, StdArray, GenBimap
 import mTaskCode
 import mTaskSerial, mTaskLCD
 
@@ -84,7 +87,7 @@ instance typeSelector Char where typeSelector = c ".c"
 instance typeSelector Bool where typeSelector = c ".b"
 instance typeSelector a    where typeSelector = c ".w"
 
-read` :: Int (ReadWrite a) State -> (a,State) | dyn a
+read` :: Int (ReadWrite a) State` -> (a,State`) | dyn a
 read` n Rd       s = (fromJust (fromDyn (s.store !! n)), s)
 read` n (Wrt a)  s = (a,{s&store=updateAt n (toDyn a) s.store})
 read` n (Updt f) s=:{store}
@@ -118,8 +121,9 @@ instance long Eval Long where
 instance == DigitalPin where (==) x y = x === y
 instance == AnalogPin   where (==) x y = x === y
 
-derive consName DigitalPin, AnalogPin, PinMode
-derive consIndex DigitalPin, AnalogPin
+derive gPrint Pin, Button, UserLED, AnalogPin, DigitalPin, PinMode
+derive class gCons Pin, Button, UserLED, AnalogPin, DigitalPin, PinMode
+
 
 tab =: toString (repeatn tabSize ' ')
 tabSize :== 2