/var/lib/ghc/package.conf.d/semigroupoids-5.0.0.4.conf is in libghc-semigroupoids-dev 5.0.0.4-1build1.
This file is owned by root:root, with mode 0o644.
The actual contents of the file can be viewed below.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 | name: semigroupoids
version: 5.0.0.4
id: semigroupoids-5.0.0.4-0fab8c80f8dee7e092f94a58b49c66d7
key: semig_520NpUpypj7B3xXlkYpznp
license: BSD3
copyright: Copyright (C) 2011-2015 Edward A. Kmett
maintainer: Edward A. Kmett <ekmett@gmail.com>
stability: provisional
homepage: http://github.com/ekmett/semigroupoids
synopsis: Semigroupoids: Category sans id
description:
Provides a wide array of (semi)groupoids and operations for working with them.
.
A 'Semigroupoid' is a 'Category' without the requirement of identity arrows for every object in the category.
.
A 'Category' is any 'Semigroupoid' for which the Yoneda lemma holds.
.
When working with comonads you often have the @\<*\>@ portion of an @Applicative@, but
not the @pure@. This was captured in Uustalu and Vene's \"Essence of Dataflow Programming\"
in the form of the @ComonadZip@ class in the days before @Applicative@. Apply provides a weaker invariant, but for the comonads used for data flow programming (found in the streams package), this invariant is preserved. Applicative function composition forms a semigroupoid.
.
Similarly many structures are nearly a comonad, but not quite, for instance lists provide a reasonable 'extend' operation in the form of 'tails', but do not always contain a value.
.
Ideally the following relationships would hold:
.
> Foldable ----> Traversable <--- Functor ------> Alt ---------> Plus Semigroupoid
> | | | | |
> v v v v v
> Foldable1 ---> Traversable1 Apply --------> Applicative -> Alternative Category
> | | | |
> v v v v
> Bind ---------> Monad -------> MonadPlus Arrow
>
.
Apply, Bind, and Extend (not shown) give rise the Static, Kleisli and Cokleisli semigroupoids respectively.
.
This lets us remove many of the restrictions from various monad transformers
as in many cases the binding operation or @\<*\>@ operation does not require them.
.
Finally, to work with these weaker structures it is beneficial to have containers
that can provide stronger guarantees about their contents, so versions of 'Traversable'
and 'Foldable' that can be folded with just a 'Semigroup' are added.
category: Control, Comonads
author: Edward A. Kmett
exposed: True
exposed-modules:
Data.Bifunctor.Apply Data.Functor.Alt Data.Functor.Apply
Data.Functor.Bind Data.Functor.Bind.Class Data.Functor.Bind.Trans
Data.Functor.Extend Data.Functor.Plus Data.Groupoid
Data.Isomorphism Data.Semigroup.Bifoldable
Data.Semigroup.Bitraversable Data.Semigroup.Foldable
Data.Semigroup.Foldable.Class Data.Semigroup.Traversable
Data.Semigroup.Traversable.Class Data.Semigroupoid
Data.Semigroupoid.Dual Data.Semigroupoid.Ob
Data.Semigroupoid.Static Data.Traversable.Instances
trusted: False
import-dirs: /usr/lib/haskell-packages/ghc/lib/x86_64-linux-ghc-7.10.3/semigroupoids-5.0.0.4-520NpUpypj7B3xXlkYpznp
library-dirs: /usr/lib/haskell-packages/ghc/lib/x86_64-linux-ghc-7.10.3/semigroupoids-5.0.0.4-520NpUpypj7B3xXlkYpznp
data-dir: /usr/share/semigroupoids
hs-libraries: HSsemigroupoids-5.0.0.4-520NpUpypj7B3xXlkYpznp
depends:
base-4.8.2.0-0d6d1084fbc041e1cded9228e80e264d
base-orphans-0.4.5-fd5d4ef84797b48b23d9bf0d3ccf8c05
bifunctors-5.1-6066ffb58d3c88ee29cabccd21c869e0
comonad-4.2.7.2-3ce8d4da7fa0772a6896e34966acad72
containers-0.5.6.2-59326c33e30ec8f6afd574cbac625bbb
contravariant-1.3.3-3eb16dd794f77adf8689c69921568e8b
distributive-0.4.4-bb01cbb0c133843286b9581b270abd0b
semigroups-0.18.0.1-8280af83a74b71fe859e6151e1ac901a
tagged-0.8.2-16a51d8cfafeba080a9011b87265d84b
transformers-0.4.2.0-81450cd8f86b36eaa8fa0cbaf6efc3a3
transformers-compat-0.4.0.4-8aa4073730c676dbe210ea8bffd8d092
haddock-interfaces: /usr/lib/ghc-doc/haddock/semigroupoids-5.0.0.4/semigroupoids.haddock
haddock-html: /usr/share/doc/libghc-semigroupoids-doc/html/
|