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). A transformation can be parameterized with one or more Bindables. Transformations rules can be lifted to work on more complex domains with the LiftView type class.


type ParamTrans a b = Trans (a, b) bSource

parameter1 :: (IsId n1, Reference a) => n1 -> (a -> Transformation b) -> ParamTrans a bSource

parameter2 :: (IsId n1, IsId n2, Reference a, Reference b) => n1 -> n2 -> (a -> b -> Transformation c) -> ParamTrans (a, b) cSource

parameter3 :: (IsId n1, IsId n2, IsId n3, Reference a, Reference b, Reference c) => n1 -> n2 -> n3 -> (a -> b -> c -> Transformation d) -> ParamTrans (a, b, c) dSource