Update ipkg

This commit is contained in:
Kiana Sheibani 2023-04-12 11:55:22 -04:00
parent 69870ff394
commit b1ad4ceef0
Signed by: toki
GPG key ID: 6CB106C25E86A9F7
7 changed files with 20 additions and 9 deletions

View file

@ -1,4 +1,4 @@
module Control.Lens.Internal.Backwards
module Control.Applicative.Backwards
%default total

View file

@ -1,10 +1,10 @@
module Control.Lens.Fold
import Data.Bicontravariant
import Data.Profunctor
import Data.Profunctor.Costrong
import Data.Profunctor.Traversing
import Control.Lens.Internal.Bicontravariant
import Control.Lens.Internal.Backwards
import Control.Applicative.Backwards
import Control.Lens.Optic
import Control.Lens.OptionalFold
import Control.Lens.Traversal

View file

@ -1,10 +1,10 @@
module Control.Lens.Getter
import Data.Bicontravariant
import Data.Profunctor
import Data.Profunctor.Costrong
import Control.Lens.Optic
import Control.Lens.Lens
import Control.Lens.Internal.Bicontravariant
%default total

View file

@ -1,41 +0,0 @@
module Control.Lens.Internal.Bicontravariant
import Data.Morphisms
import Data.Contravariant
import Data.Profunctor
%default total
public export
interface Bicontravariant f where
contrabimap : (a -> b) -> (c -> d) -> f b d -> f a c
contrabimap f g = contramapFst f . contramapSnd g
contramapFst : (a -> b) -> f b c -> f a c
contramapFst f = contrabimap f id
contramapSnd : (b -> c) -> f a c -> f a b
contramapSnd = contrabimap id
public export
Contravariant f => Bicontravariant (Star f) where
contrabimap f g = MkStar . dimap @{Function} f (contramap g) . applyStar
public export
Contravariant f => Bicontravariant (Kleislimorphism f) where
contrabimap f g = Kleisli . dimap @{Function} f (contramap g) . applyKleisli
public export
Bicontravariant (Forget {k=Type} r) where
contrabimap f _ = MkForget . lmap @{Function} f . runForget
public export
rphantom : (Profunctor p, Bicontravariant p) => p a b -> p a c
rphantom = contramapSnd (const ()) . rmap (const ())
public export
biphantom : (Bifunctor p, Bicontravariant p) => p a b -> p c d
biphantom = contrabimap (const ()) (const ()) . bimap (const ()) (const ())

View file

@ -1,8 +1,8 @@
module Control.Lens.OptionalFold
import Data.Bicontravariant
import Data.Profunctor
import Data.Profunctor.Costrong
import Control.Lens.Internal.Bicontravariant
import Control.Lens.Optic
import Control.Lens.Optional
import Control.Lens.Getter

View file

@ -4,7 +4,7 @@ import Control.Monad.State
import Data.Zippable
import Data.Profunctor
import Data.Profunctor.Traversing
import Control.Lens.Internal.Backwards
import Control.Applicative.Backwards
import Control.Lens.Optic
import Control.Lens.Optional