packages feed

Cabal revisions of streams-3.0.1

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

revision 1
-name:          streams-category:      Control, Comonads-version:       3.0.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/streams-homepage:      http://github.com/ekmett/streams/issues-copyright:     Copyright 2011-2013 Edward Kmett-               Copyright 2010 Tony Morris, Oliver Taylor, Eelis van der Weegen-               Copyright 2007-2010 Wouter Swierstra, Bas van Dijk-               Copyright 2008 Iavor S. Diatchki-synopsis:      Various Haskell 2010 stream comonads-build-type:    Simple-extra-source-files: README .travis.yml-description:-  Various Haskell 2010 stream comonads.-  * "Data.Stream.Future" provides a coinductive anti-causal stream, or non-empty 'ZipList'. The comonad provides access to only the-    tail of the stream. Like a conventional 'ZipList', this is /not/ a monad.-  .-  > data Future a = Last a | a :< Future a-  .-  * "Data.Stream.Future.Skew" provides a non-empty skew-binary random-access-list with the semantics of @Data.Stream.Future@. As with-    "Data.Stream.Future" this stream is not a 'Monad', since the 'Applicative' instance zips streams of potentially differing lengths.-    The random-access-list structure provides a number of operations logarithmic access time, but makes 'Data.Stream.Future.Skew.cons'-    less productive. Where applicable "Data.Stream.Infinite.Skew" may be more efficient, due to a lazier and more efficient 'Applicative'-    instance.-  .-  >-  .-  * "Data.Stream.Infinite" provides a coinductive infinite anti-causal stream. The 'Comonad' provides access to the tail of the-    stream and the 'Applicative' zips streams together. Unlike 'Future', infinite stream form a 'Monad'. The monad diagonalizes-    the 'Stream', which is consistent with the behavior of the 'Applicative', and the view of a 'Stream' as a isomorphic to the reader-    monad from the natural numbers. Being infinite in length, there is no 'Alternative' instance, but instead the 'FunctorAlt'-    instance provides access to the 'Semigroup' of interleaving streams.-  .-  > data Stream a = a :< Stream a-  .-  * "Data.Stream.Infinite.Skew" provides an infinite skew-binary random-access-list with the semantics of "Data.Stream.Infinite"-    Since every stream is infinite, the 'Applicative' instance can be considerably less strict than the corresponding instance for-    "Data.Stream.Future.Skew" and performs asymptotically better.-  .-  >-  .-  * "Data.Stream.Infinite.Functional.Zipper" provides a bi-infinite sequence, represented as a pure function with an accumulating-    parameter added to optimize moving the current focus.-  .-  > data Zipper a = !Integer :~ (Integer -> a)-  .-  * "Data.Stream.Supply" provides a comonadic supply of unique values, which are-    generated impurely as the tree is explored.--source-repository head-  type: git-  location: git://github.com/ekmett/streams.git--library-  other-extensions:-    PatternGuards-    BangPatterns--  build-depends:-    base          >= 4 && < 5,-    comonad       >= 3,-    distributive  >= 0.2.1,-    semigroupoids >= 3,-    semigroups    >= 0.8.3.1--  extensions: CPP-  if impl(ghc)-    cpp-options: -DLANGUAGE_DeriveDataTypeable-    extensions: FlexibleContexts, DeriveDataTypeable--  exposed-modules:-    Data.Stream.Future-    Data.Stream.Future.Skew-    Data.Stream.Infinite-    Data.Stream.Infinite.Skew-    Data.Stream.Infinite.Functional.Zipper-    Data.Stream.Supply--  hs-source-dirs: src-  ghc-options: -Wall-+name:          streams
+category:      Control, Comonads
+version:       3.0.1
+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/streams
+homepage:      http://github.com/ekmett/streams/issues
+copyright:     Copyright 2011-2013 Edward Kmett
+               Copyright 2010 Tony Morris, Oliver Taylor, Eelis van der Weegen
+               Copyright 2007-2010 Wouter Swierstra, Bas van Dijk
+               Copyright 2008 Iavor S. Diatchki
+synopsis:      Various Haskell 2010 stream comonads
+build-type:    Simple
+extra-source-files: README .travis.yml
+description:
+  Various Haskell 2010 stream comonads.
+  * "Data.Stream.Future" provides a coinductive anti-causal stream, or non-empty 'ZipList'. The comonad provides access to only the
+    tail of the stream. Like a conventional 'ZipList', this is /not/ a monad.
+  .
+  > data Future a = Last a | a :< Future a
+  .
+  * "Data.Stream.Future.Skew" provides a non-empty skew-binary random-access-list with the semantics of @Data.Stream.Future@. As with
+    "Data.Stream.Future" this stream is not a 'Monad', since the 'Applicative' instance zips streams of potentially differing lengths.
+    The random-access-list structure provides a number of operations logarithmic access time, but makes 'Data.Stream.Future.Skew.cons'
+    less productive. Where applicable "Data.Stream.Infinite.Skew" may be more efficient, due to a lazier and more efficient 'Applicative'
+    instance.
+  .
+  >
+  .
+  * "Data.Stream.Infinite" provides a coinductive infinite anti-causal stream. The 'Comonad' provides access to the tail of the
+    stream and the 'Applicative' zips streams together. Unlike 'Future', infinite stream form a 'Monad'. The monad diagonalizes
+    the 'Stream', which is consistent with the behavior of the 'Applicative', and the view of a 'Stream' as a isomorphic to the reader
+    monad from the natural numbers. Being infinite in length, there is no 'Alternative' instance, but instead the 'FunctorAlt'
+    instance provides access to the 'Semigroup' of interleaving streams.
+  .
+  > data Stream a = a :< Stream a
+  .
+  * "Data.Stream.Infinite.Skew" provides an infinite skew-binary random-access-list with the semantics of "Data.Stream.Infinite"
+    Since every stream is infinite, the 'Applicative' instance can be considerably less strict than the corresponding instance for
+    "Data.Stream.Future.Skew" and performs asymptotically better.
+  .
+  >
+  .
+  * "Data.Stream.Infinite.Functional.Zipper" provides a bi-infinite sequence, represented as a pure function with an accumulating
+    parameter added to optimize moving the current focus.
+  .
+  > data Zipper a = !Integer :~ (Integer -> a)
+  .
+  * "Data.Stream.Supply" provides a comonadic supply of unique values, which are
+    generated impurely as the tree is explored.
+
+source-repository head
+  type: git
+  location: git://github.com/ekmett/streams.git
+
+library
+  other-extensions:
+    PatternGuards
+    BangPatterns
+
+  build-depends:
+    base          >= 4 && < 4.8,
+    comonad       >= 3,
+    distributive  >= 0.2.1,
+    semigroupoids >= 3,
+    semigroups    >= 0.8.3.1
+
+  extensions: CPP
+  if impl(ghc)
+    cpp-options: -DLANGUAGE_DeriveDataTypeable
+    extensions: FlexibleContexts, DeriveDataTypeable
+
+  exposed-modules:
+    Data.Stream.Future
+    Data.Stream.Future.Skew
+    Data.Stream.Infinite
+    Data.Stream.Infinite.Skew
+    Data.Stream.Infinite.Functional.Zipper
+    Data.Stream.Supply
+
+  hs-source-dirs: src
+  ghc-options: -Wall
+