-- Hoogle documentation, generated by Haddock -- See Hoogle, http://www.haskell.org/hoogle/ -- | Type-threaded list -- -- Thrist is a list-like data structure (GADT) whose elements are values -- of a two-parameter datatype. The typing constraint ensures that the -- second type parameter of a former value unifies with the first type -- parameter of the latter. -- -- This threading of types is the foundation for thrists' nice -- properties. E.g., paired with a suitable semantics, function -- composition (.) can be embedded. -- -- For further ideas, please consult the companion (draft) paper -- "Thrists: Dominoes of Data" at -- http://www.opendylan.org/~gabor/Thrist-draft-2008-07-18.pdf @package thrist @version 0.1 module Data.Thrist data Thrist :: (* -> * -> *) -> * -> * -> * Nil :: Thrist p a a Cons :: p a b -> Thrist p b c -> Thrist p a c foldThrist :: (forall i j k. p i j -> p j k -> p i k) -> p c c -> Thrist p a c -> p a c appendThrist :: Thrist p a b -> Thrist p b c -> Thrist p a c instance Monoid (Thrist p a a)