>>|. delay (lit d)
>>|. bl (Not st))
In {main=bl true}
-lightswitch :: (Shared sds Bool) -> Main (MTask v ()) | liftsds, mtask v & RWShared sds & TC (sds () Bool Bool)
+lightswitch :: (Shared sds Bool) -> Main (MTask v ()) | lowerSds, mtask v & RWShared sds & TC (sds () Bool Bool)
lightswitch sh =
declarePin D13 PMOutput \d13->
- liftsds \ls=sh
+ lowerSds \ls=sh
In fun \f=(\st->
getSds ls
>>*. [IfValue ((!=.)st) (\v->writeD d13 v)]