packages feed

Cabal revisions of semigroupoids-1.2.5

Hackage metadata revisions edit the .cabal file after upload; each diff below is one revision.

revision 1
-name:          semigroupoids-category:      Control, Comonads-version:       1.2.5-license:       BSD3-cabal-version: >= 1.6-license-file:  LICENSE-author:        Edward A. Kmett-maintainer:    Edward A. Kmett <ekmett@gmail.com>-stability:     provisional-homepage:      http://github.com/ekmett/semigroupoids-copyright:     Copyright (C) 2011 Edward A. Kmett-build-type:    Simple-synopsis:      Haskell 98 semigroupoids: Category sans id-description:   -  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-  > Traversable1 <--- Foldable1     Apply --------> Applicative -> Alternative      Category-  >                                   |               |              |                  |-  >                                   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.--source-repository head-  type: git-  location: git://github.com/ekmett/semigroupoids.git--library-  build-depends: -    base >= 4 && < 5,-    transformers >= 0.2 && < 0.3,-    containers >= 0.3 && < 0.5,-    contravariant >= 0.1.2 && < 0.2,-    comonad >= 1.1.1 && < 1.2, -    semigroups >= 0.7.1 && < 0.8--  exposed-modules:-    Data.Functor.Alt,-    Data.Functor.Apply,-    Data.Functor.Bind,-    Data.Functor.Bind.Trans,-    Data.Functor.Plus,-    Data.Semigroup.Foldable,-    Data.Semigroup.Traversable-    Data.Semigroupoid-    Data.Semigroupoid.Dual-    Data.Semigroupoid.Static-    Data.Traversable.Instances--  ghc-options: -Wall +name:          semigroupoids
+category:      Control, Comonads
+version:       1.2.5
+x-revision: 1
+license:       BSD3
+cabal-version: >= 1.6
+license-file:  LICENSE
+author:        Edward A. Kmett
+maintainer:    Edward A. Kmett <ekmett@gmail.com>
+stability:     provisional
+homepage:      http://github.com/ekmett/semigroupoids
+copyright:     Copyright (C) 2011 Edward A. Kmett
+build-type:    Simple
+synopsis:      Haskell 98 semigroupoids: Category sans id
+description:   
+  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
+  > Traversable1 <--- Foldable1     Apply --------> Applicative -> Alternative      Category
+  >                                   |               |              |                  |
+  >                                   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.
+
+source-repository head
+  type: git
+  location: git://github.com/ekmett/semigroupoids.git
+
+library
+  build-depends: 
+    base >= 4 && < 4.18,
+    transformers >= 0.2 && < 0.3,
+    containers >= 0.3 && < 0.5,
+    contravariant >= 0.1.2 && < 0.2,
+    comonad >= 1.1.1 && < 1.2, 
+    semigroups >= 0.7.1 && < 0.8
+
+  exposed-modules:
+    Data.Functor.Alt,
+    Data.Functor.Apply,
+    Data.Functor.Bind,
+    Data.Functor.Bind.Trans,
+    Data.Functor.Plus,
+    Data.Semigroup.Foldable,
+    Data.Semigroup.Traversable
+    Data.Semigroupoid
+    Data.Semigroupoid.Dual
+    Data.Semigroupoid.Static
+    Data.Traversable.Instances
+
+  ghc-options: -Wall