:: BC
= BCNop
- | BCPush String
+ | BCPush Int
| BCPop
+ //SDS functions
+ | BCSdsStore Int
+ | BCSdsFetch Int
+ | BCSdsPublish Int
//Unary ops
| BCNot
//Binary Int ops
| BCSerialRead
| BCSerialParseInt
//Pins
- | BCAnalogRead AnalogPin
- | BCAnalogWrite AnalogPin
+ | BCAnalogRead Pin
+ | BCAnalogWrite Pin
+ | BCDigitalRead Pin
+ | BCDigitalWrite Pin
+ | BCTest AnalogPin
//:: ByteCode a p = BC (BCState -> ([BC], BCState))
:: ByteCode a p = BC [BC]
a::()
}
-toByteVal :: BC -> String
+class toByteCode a :: a -> [Char]
+instance toByteCode Int
+instance toByteCode Bool
+instance toByteCode Char
+instance toByteCode String
+instance toByteCode Long
+instance toByteCode Button
+
+toByteVal :: BC -> [Char]
toReadableByteVal :: BC -> String
//instance toCode Pin