ideas-1.1: Feedback services for intelligent tutoring systems

Portabilityportable (depends on ghc)
Safe HaskellNone




This module defines transformations. Given a term, a transformation returns a list of results (often a singleton list or the empty list).


Trans data type

Constructor functions

class MakeTrans f whereSource

A type class for constructing a transformation. If possible, makeTrans should be used. Use specialized constructor functions for disambiguation.


makeTrans :: (a -> f b) -> Trans a bSource

transPure :: (a -> b) -> Trans a bSource

transMaybe :: (a -> Maybe b) -> Trans a bSource

transList :: (a -> [b]) -> Trans a bSource

transRef :: Typeable a => Ref a -> Trans a aSource

Lifting transformations

makeTransLiftContext :: MakeTrans f => (a -> f a) -> Transformation (Context a)Source

Overloaded variant of transLiftContext

makeTransLiftContext_ :: MakeTrans f => (a -> f ()) -> Transformation (Context a)Source

Overloaded variant of transLiftContext; ignores result

Using transformations

transApply :: Trans a b -> a -> [(b, Environment)]Source