{-# LANGUAGE TemplateHaskell #-} -- | Dual mappings for types in 'base'. module Categorical.Dual.Base where import Prelude hiding (id) import Categorical.Dual import Categorical.Dual.Prelude import Control.Arrow import Control.Category importDuals preludeDuals labelSelfDual ''Arrow labelSelfDual 'arr labelDual '(***) '(+++) labelDual '(&&&) '(|||) labelSelfDual 'returnA labelSelfDual ''Category labelSelfDual 'id labelSemiDual '(Prelude..) '(>>>) labelSemiDual '(Control.Category..) '(>>>) labelDual '(<<<) '(>>>) -- | Duals for 'base'. exportDuals "baseDuals"