semigroupoids-6.0.1: Semigroupoids: Category sans id

Copyright | (C) 2007-2015 Edward Kmett
License | BSD-style (see the file LICENSE)
Maintainer | Edward Kmett <ekmett@gmail.com>
Stability | provisional
Portability | portable
Safe Haskell | Safe
Language | Haskell2010

Data.Semigroupoid.Dual

Description

A semigroupoid satisfies all of the requirements to be a Category except for the existence of identity arrows.

# Documentation

newtype Dual (k2 :: k -> k1 -> Type) (a :: k1) (b :: k) Source #

Constructors

Dual |

Fields

- getDual :: k2 b a

#### Instances

Instances details

Category k2 => Category (Dual k2 :: k1 -> k1 -> Type) Source # |
Instance details Defined in Data.Semigroupoid.Dual Methods id :: forall (a :: k1). Dual k2 a a Source # (.) :: forall (b :: k1) (c :: k1) (a :: k1). Dual k2 b c -> Dual k2 a b -> Dual k2 a c Source #
Groupoid k2 => Groupoid (Dual k2 :: k1 -> k1 -> Type) Source # |
Instance details Defined in Data.Groupoid Methods inv :: forall (a :: k1) (b :: k1). Dual k2 a b -> Dual k2 b a Source #
Semigroupoid k2 => Semigroupoid (Dual k2 :: k1 -> k1 -> Type) Source # |
Instance details Defined in Data.Semigroupoid.Dual Methods o :: forall (j :: k1) (k10 :: k1) (i :: k1). Dual k2 j k10 -> Dual k2 i j -> Dual k2 i k10 Source #