hask-0: Categories

Copyright(c) Edward Kmett 2014
LicenseBSD3
MaintainerEdward Kmett <ekmett@gmail.com>
Stabilityexperimental
Portabilitynon-portable
Safe HaskellNone
LanguageHaskell2010

Hask.Lens

Description

 

Documentation

class (Precartesian ((~>) :: i -> i -> *), Profunctor p) => Strong p where Source

Minimal complete definition

_1 | _2

Methods

_1 :: p a b -> p (a * c) (b * c) Source

_2 :: p a b -> p (c * a) (c * b) Source

Instances

Strong * (->) 
Strong Constraint (:-) 
Precartesian i ((~>) i) => Strong i (Self i) 
Precartesian i ((~>) i) => Strong i (Get i i r) 
Strong (i -> Constraint) (Nat Constraint i) 
Strong (i -> *) (Nat * i) 

class (Strong p, Category p) => Freyd p Source

Instances

(Strong k p, Category k p) => Freyd k p 

type Getter s a = forall p. (Strong p, Post Functor p) => p a a -> p s s Source

to :: (Contravariant p, Post Contravariant p) => (s ~> a) -> p a a -> p s s Source

type Lens s t a b = forall p. Strong p => p a b -> p s t Source

type Traversal s t a b = forall p. (Strong p, Post Monoidal p) => p a b -> p s t Source