mirror of
https://github.com/gentoo-mirror/gentoo.git
synced 2026-09-23 16:49:10 -07:00
dev-haskell/semigroupoids: [QA] Consistent whitespace in metadata.xml
This commit is contained in:
@@ -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 @\<*\>@ 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:
|
||||
|
||||
|
||||
> Traversable <---- Foldable <--- Functor ------> Alt ---------> Plus Semigroupoid
|
||||
> | | | | |
|
||||
> v v v v v
|
||||
@@ -27,36 +27,46 @@
|
||||
> v v v v
|
||||
> Bind ---------> Monad -------> MonadPlus Arrow
|
||||
>
|
||||
|
||||
|
||||
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 @\<*\>@ 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>
|
||||
|
||||
Reference in New Issue
Block a user