update praatje
[ri1617.git] / final_review / demo.listing
index eaeaa9e..7c330c9 100644 (file)
@@ -1,18 +1,19 @@
-main = sds \x=1 In sds \pin=1 In
-  { main =
-    IF (digitalRead D3) (
-      x =. x +. lit 1 :.  pub x
-    ) ( noOp
-    ) :.
-    IF (pinnetje ==. lit 1) (
-      digitalWrite D0 (lit True)
-    ) ( IF (pinnetje ==. lit 2) (
-        digitalWrite D1 (lit True)
-      ) ( digitalWrite D2 (lit True)
-      )) }
+bc1 d = {main = ledOn d}
+bc2 d = {main = ledOff d}
+bc3 = sds \x=1 In sds \pin=1 In {main =
+               IF (digitalRead D3) (
+                       x =. x +. lit 1 :.
+                       pub x
+               ) (
+                       noOp
+               ) :.
+               IF (pin ==. lit 1) (
+                       ledOn LED1
+               ) (
+                       IF (pin ==. lit 2) (
+                               ledOn LED2
+                       ) (
+                               ledOn LED3
+                       )
+               )}
 
-ledOn :: DigitalPin -> Main (ByteCode () Stmt)
-ledOn d = { main = digitalWrite d (lit True) :. noOp }
-
-ledOff :: DigitalPin -> Main (ByteCode () Stmt)
-ledOff d = { main = digitalWrite d (lit False) :. noOp }