precursor-0.1.0.0: src/Precursor/Control/Category.hs
{-# LANGUAGE NoImplicitPrelude #-}
module Precursor.Control.Category
( -- * Category
Category
, (.)
, id
-- ** Composition
, (<<<)
, (>>>)
-- * Arrow
, Arrow
, arr
, (***)
, (&&&)
-- ** Arrows
, Kleisli(..)
-- *** Derived combinators
, returnA
, (^>>)
, (>>^)
-- *** Right-to-left variants
, (<<^)
, (^<<)
-- ** Monoid operations
, ArrowZero
, zeroArrow
, ArrowPlus
, (<+>)
-- ** Conditionals
, ArrowChoice
, left
, right
, (+++)
, (|||)
-- ** Arrow application
, ArrowApply
, app
, ArrowMonad(..)
, leftApp
-- ** Feedback
, ArrowLoop
, loop
) where
import Control.Arrow
import Control.Category