module Network.Spata.Type where import Data.DList (DList) import Control.Monad.Writer type Assoc = [(String, String)] type Guard = String -> Assoc -> Either String Assoc type Guards = [String] -> Assoc -> Either String Assoc type Task = Assoc -> Either String Assoc type GuardiansT a = Writer (DList Task) a type Guardians = GuardiansT ()