ideas-1.8: Feedback services for intelligent tutoring systems

Maintainerbastiaan.heeren@ou.nl
Stabilityprovisional
Portabilityportable (depends on ghc)
Safe HaskellNone
LanguageHaskell98

Ideas.Common.Constraint

Description

Constraints for constraint-based tutors

Synopsis

Documentation

data Constraint a Source #

Instances
LiftView Constraint Source # 
Instance details

Defined in Ideas.Common.Constraint

Methods

liftView :: View a b -> Constraint b -> Constraint a Source #

liftViewIn :: View a (b, c) -> Constraint b -> Constraint a Source #

Eq (Constraint a) Source # 
Instance details

Defined in Ideas.Common.Constraint

Methods

(==) :: Constraint a -> Constraint a -> Bool #

(/=) :: Constraint a -> Constraint a -> Bool #

Ord (Constraint a) Source # 
Instance details

Defined in Ideas.Common.Constraint

Show (Constraint a) Source # 
Instance details

Defined in Ideas.Common.Constraint

HasId (Constraint a) Source # 
Instance details

Defined in Ideas.Common.Constraint

Methods

getId :: Constraint a -> Id Source #

changeId :: (Id -> Id) -> Constraint a -> Constraint a Source #

makeConstraint :: IsId n => n -> (a -> Result ()) -> Constraint a Source #

isSatisfied :: Constraint a -> a -> Bool Source #

Satisfaction condition

isViolated :: Constraint a -> a -> Maybe String Source #

Satisfaction condition

data Result a Source #

Constructors

Irrelevant 
Error String 
Ok a 
Instances
Monad Result Source # 
Instance details

Defined in Ideas.Common.Constraint

Methods

(>>=) :: Result a -> (a -> Result b) -> Result b #

(>>) :: Result a -> Result b -> Result b #

return :: a -> Result a #

fail :: String -> Result a #

Functor Result Source # 
Instance details

Defined in Ideas.Common.Constraint

Methods

fmap :: (a -> b) -> Result a -> Result b #

(<$) :: a -> Result b -> Result a #

Applicative Result Source # 
Instance details

Defined in Ideas.Common.Constraint

Methods

pure :: a -> Result a #

(<*>) :: Result (a -> b) -> Result a -> Result b #

liftA2 :: (a -> b -> c) -> Result a -> Result b -> Result c #

(*>) :: Result a -> Result b -> Result b #

(<*) :: Result a -> Result b -> Result a #

Alternative Result Source # 
Instance details

Defined in Ideas.Common.Constraint

Methods

empty :: Result a #

(<|>) :: Result a -> Result a -> Result a #

some :: Result a -> Result [a] #

many :: Result a -> Result [a] #

MonadPlus Result Source # 
Instance details

Defined in Ideas.Common.Constraint

Methods

mzero :: Result a #

mplus :: Result a -> Result a -> Result a #

Show a => Show (Result a) Source # 
Instance details

Defined in Ideas.Common.Constraint

Methods

showsPrec :: Int -> Result a -> ShowS #

show :: Result a -> String #

showList :: [Result a] -> ShowS #

relevance :: Result a -> Result a Source #

Turn errors into irrelevant results