summaryrefslogtreecommitdiff
path: root/dev-haskell/semigroupoids
diff options
context:
space:
mode:
authorV3n3RiX <venerix@redcorelinux.org>2017-12-01 03:04:39 +0000
committerV3n3RiX <venerix@redcorelinux.org>2017-12-01 03:04:39 +0000
commit407525b571b48cfd65e1ad7a02d250a927c967c9 (patch)
tree844bea44d85dc7218f54970af1c42cc9d55c3f1a /dev-haskell/semigroupoids
parent89c6c06b8c42107dd231687a1012354e7d3039fc (diff)
gentoo resync : 01.12.2017
Diffstat (limited to 'dev-haskell/semigroupoids')
-rw-r--r--dev-haskell/semigroupoids/Manifest2
-rw-r--r--dev-haskell/semigroupoids/metadata.xml66
2 files changed, 39 insertions, 29 deletions
diff --git a/dev-haskell/semigroupoids/Manifest b/dev-haskell/semigroupoids/Manifest
index 606b7749777d..cbb917cfe260 100644
--- a/dev-haskell/semigroupoids/Manifest
+++ b/dev-haskell/semigroupoids/Manifest
@@ -10,4 +10,4 @@ EBUILD semigroupoids-4.2.ebuild 1273 BLAKE2B 4bbd125d90daa83431146805c4b11a98628
EBUILD semigroupoids-4.3.ebuild 1393 BLAKE2B 6e7e0d9d2b7585fb17686bd1ca67d459e9a3ac853d79c2f830229438801cb5dc5b5a7da2bc3769bd4de2615e028885e011fde18efee49592d0a4fd6cfc10cb86 SHA512 2e926b312a63d741607ce979cc4c5b89b069a32805c2319ecd74c1fee1bbe6a0528b672b6721c2021991aac703c3f5bbfb9a0cc1439abd5f2bf708c23d73abfc
EBUILD semigroupoids-5.0.0.4.ebuild 1787 BLAKE2B b9186750d78b5469c821f732398be1650cf69cc81c7c6cfce2e773c18c3e9888c24aa9dc9cd5a8a5ca7846111a890a2ee68ef39b76ba73966e0c25c8983bcccc SHA512 68b22dc053cd0ef706e1a9bfec9e28c24d4540016ef765c6c24c3cae62b216585de12ae24b84942a9b9502745a95356dfd10f248696f178a9a2b3e8893f1d7a1
EBUILD semigroupoids-5.1.ebuild 1785 BLAKE2B 4633f5fb8a1d3e493a9f64b549dae715eed6d31880d50ac0039983dcd6e5f789407de30ee5ced23fe200f17a397b94ae2630bcdd59a1a4166f2445993f94667b SHA512 4beee01085ee41db8ee6f0f8218294b9c4f7204fde309db2adc578602957624fca4c0dfce87e9b03b61de42c3a9e897f08fec249a5f911a3174fbfdd6afb5ced
-MISC metadata.xml 3870 BLAKE2B 6a31f3566be4a12ebf82fa1b7b20c8ba11f33bb97382189e09947a8db07a4b2c10eef27533674866a35d80a61dd3703205dc2f0de9809c1dd60fd165a4cd2480 SHA512 72a49dba5278b6d65cbddf9d308ca5b32e10efa6aea3f924110ace7e092bd1c0b987735ebe7422ba8f325b3b594e3e53531b196f9f3682c21c41d925b4cc4908
+MISC metadata.xml 3901 BLAKE2B 610d61a659d9603532e67bcc12d0a3b04e00716fcc1bd72a6627d70a2df5a22dd026baafe2ba5ceb206de14e5e8eb2c13e0958db3c97e03aaf7a0129cdab5cd6 SHA512 abd91a8feaf1f4fcaa1c19aa9ad33c075fd9a002b7abb9e1b37399faa2fa430d67d17380bc03e7430fab5da56130bcbbb5700ffd05d4456c6cd7a546f4a7a930
diff --git a/dev-haskell/semigroupoids/metadata.xml b/dev-haskell/semigroupoids/metadata.xml
index f7fae28fcf66..d6c06edca015 100644
--- a/dev-haskell/semigroupoids/metadata.xml
+++ b/dev-haskell/semigroupoids/metadata.xml
@@ -7,18 +7,18 @@
</maintainer>
<longdescription>
Provides a wide array of semigroupoids and operations for working with semigroupds.
-
+
A Semigroupoid is a Category without the requirement of identity arrows for every object in the category.
-
+
When working with comonads you often have the @\&lt;*\&gt;@ 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:
-
+
&gt; Traversable &lt;---- Foldable &lt;--- Functor ------&gt; Alt ---------&gt; Plus Semigroupoid
&gt; | | | | |
&gt; v v v v v
@@ -27,36 +27,46 @@
&gt; v v v v
&gt; Bind ---------&gt; Monad -------&gt; MonadPlus Arrow
&gt;
-
+
Apply, Bind, and Extract 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 @\&lt;*\&gt;@ 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.
</longdescription>
<use>
- <flag name="comonad">You can disable the use of the `comonad` package using
- `-f-comonad`. Disabling this is an unsupported configuration, but it may be
- useful for accelerating builds in sandboxes for expert users. If disabled we
- will not supply instances of `Comonad`</flag>
- <flag name="containers">You can disable the use of the `containers` package
- using `-f-containers`. Disabing this is an unsupported configuration, but it
- may be useful for accelerating builds in sandboxes for expert users.</flag>
- <flag name="contravariant">You can disable the use of the `contravariant`
- package using `-f-contravariant`. Disabling this is an unsupported
- configuration, but it may be useful for accelerating builds in sandboxes for
- expert users. If disabled we will not supply instances of `Contravariant`</flag>
- <flag name="distributive">You can disable the use of the `distributive`
- package using `-f-distributive`. Disabling this is an unsupported
- configuration, but it may be useful for accelerating builds in sandboxes for
- expert users. If disabled we will not supply instances of `Distributive`</flag>
- <flag name="tagged">You can disable the use of the `tagged` package
- using `-f-tagged`. Disabing this is an unsupported
- configuration, but it may be useful for accelerating builds in
- sandboxes for expert users.</flag>
+ <flag name="comonad">
+ You can disable the use of the `comonad` package using
+ `-f-comonad`. Disabling this is an unsupported configuration, but it may be
+ useful for accelerating builds in sandboxes for expert users. If disabled we
+ will not supply instances of `Comonad`
+ </flag>
+ <flag name="containers">
+ You can disable the use of the `containers` package
+ using `-f-containers`. Disabing this is an unsupported configuration, but it
+ may be useful for accelerating builds in sandboxes for expert users.
+ </flag>
+ <flag name="contravariant">
+ You can disable the use of the `contravariant`
+ package using `-f-contravariant`. Disabling this is an unsupported
+ configuration, but it may be useful for accelerating builds in sandboxes for
+ expert users. If disabled we will not supply instances of `Contravariant`
+ </flag>
+ <flag name="distributive">
+ You can disable the use of the `distributive`
+ package using `-f-distributive`. Disabling this is an unsupported
+ configuration, but it may be useful for accelerating builds in sandboxes for
+ expert users. If disabled we will not supply instances of `Distributive`
+ </flag>
+ <flag name="tagged">
+ You can disable the use of the `tagged` package
+ using `-f-tagged`. Disabing this is an unsupported
+ configuration, but it may be useful for accelerating builds in
+ sandboxes for expert users.
+ </flag>
</use>
<upstream>
<remote-id type="github">ekmett/semigroupoids</remote-id>