module skeleton7
-from iTasks import always, hasValue, :: TaskValue(..), :: Task, :: Stability, :: TaskCont(..), :: Action, updateInformation, viewInformation, class descr, instance descr String, :: UpdateOption, :: ViewOption(..), -||-, -||, ||-, startEngine, class Publishable, >>*, class TFunctor, instance TFunctor Task, class TApplicative, instance TApplicative Task, instance Publishable Task, Void
-import Data.Tuple, StdClass, StdList, iTasks._Framework.Generic, Text.JSON, Data.Functor, Control.Applicative, Control.Monad, Data.Map
+from iTasks import always,
+ hasValue,
+ :: TaskValue(..),
+ :: Task,
+ :: Stability,
+ :: TaskCont(..),
+ :: Action,
+ updateInformation,
+ viewInformation,
+ class descr,
+ instance descr String,
+ :: UpdateOption,
+ :: ViewOption(..),
+ -||-,
+ -||,
+ ||-,
+ startEngine,
+ class Publishable,
+ >>*,
+ class TFunctor,
+ instance TFunctor Task,
+ class TApplicative,
+ instance TApplicative Task,
+ instance Publishable Task,
+ Void
+import Data.Tuple,
+ StdClass,
+ StdList,
+ iTasks._Framework.Generic,
+ Text.JSON,
+ Data.Functor,
+ Control.Applicative,
+ Control.Monad,
+ Data.Map
import qualified iTasks
import qualified Text
from Text import class Text, instance Text String
:: Expression
= New
- | Insert Element Set
- | Delete Element Set
- | Variable Ident
- | Union Set Set
- | Difference Set Set
+ | Insert Element Set
+ | Delete Element Set
+ | Variable Ident
+ | Union Set Set
+ | Difference Set Set
| Intersection Set Set
- | Integer Int
- | Size Set
- | Oper Element Op Element
- | (=.) infixl 2 Ident Expression
+ | Integer Int
+ | Size Set
+ | Oper Element Op Element
+ | (=.) infixl 2 Ident Expression
-:: Op = +. | -. | *.
-:: Set :== Expression
+:: Op = +. | -. | *.
+:: Set :== Expression
:: Element :== Expression
:: Ident :== String
+
// === State
+:: Val = Int Int | Set Set
+:: State :== Map String Val
// === semantics
// === simulation
-(>>>=) :== 'iTasks'.tbind
+(>>>=) :== 'iTasks'.tbind
(>>>|) a b :== 'iTasks'.tbind a (\_ -> b)
-treturn :== 'iTasks'.return
-ActionOk :== 'iTasks'.ActionOk
+treturn :== 'iTasks'.return
+ActionOk :== 'iTasks'.ActionOk
ActionQuit :== 'iTasks'.ActionQuit
-ActionNew :== 'iTasks'.ActionNew
-
+ActionNew :== 'iTasks'.ActionNew
Start = Void