packages feed

extensible-effects 1.7.1.1 → 1.7.1.2

raw patch · 3 files changed

+137/−23 lines, 3 filesPVP ok

version bump matches the API change (PVP)

API changes (from Hackage documentation)

Files

+ LICENSE view
@@ -0,0 +1,20 @@+Copyright (c) 2014 Oleg Kiselyov, Amr Sabry, Cameron Swords, Ben Foppa++Permission is hereby granted, free of charge, to any person obtaining+a copy of this software and associated documentation files (the+"Software"), to deal in the Software without restriction, including+without limitation the rights to use, copy, modify, merge, publish,+distribute, sublicense, and/or sell copies of the Software, and to+permit persons to whom the Software is furnished to do so, subject to+the following conditions:++The above copyright notice and this permission notice shall be included+in all copies or substantial portions of the Software.++THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,+EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF+MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.+IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY+CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT,+TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE+SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
+ README.md view
@@ -0,0 +1,25 @@+extensible-effects is based on the work+[Extensible Effects: An Alternative to Monad Transformers](http://okmij.org/ftp/Haskell/extensible/).+Please read the [paper](http://okmij.org/ftp/Haskell/extensible/exteff.pdf) for details.++## Advantages++  * Effects can be added, removed, and interwoven without changes to code not+    dealing with those effects.++## Disadvantages++  * Common functions can't be grouped using typeclasses, e.g.+    the `ask` and `getState` functions can't be grouped with some++        class Get t a where+          ask :: Member (t a) r => Eff r a++    `ask` is inherently ambiguous, since the type signature only provides+    a constraint on `t`, and nothing more. To specify fully, a parameter+    involving the type `t` would need to be added, which would defeat the point+    of having the grouping in the first place.++  * Requires a `Typeable` instance on the return type.+  * Neither `Eff` nor `(:>)` has a `Typeable` instance, and can thus often not+    be used as a return type (e.g. `State` type) for other `Eff`s.
extensible-effects.cabal view
@@ -1,28 +1,64 @@-Name:                extensible-effects-Version:             1.7.1.1-Synopsis:            An Alternative to Monad Transformers-Description:         This package introduces datatypes for typeclass-constrained effects,+name:                extensible-effects++-- The package version.  See the Haskell package versioning policy (PVP)+-- for standards guiding when and how versions should be incremented.+-- http://www.haskell.org/haskellwiki/Package_versioning_policy+-- PVP summary:      +-+------- breaking API changes+--                   | | +----- non-breaking API additions+--                   | | | +--- code changes with no API change+version:             1.7.1.2++-- A short (one-line) description of the package.+synopsis:            An Alternative to Monad Transformers++-- A longer description of the package.+description:         This package introduces datatypes for typeclass-constrained effects,                      as an alternative to monad-transformer based (datatype-constrained)                      approach of multi-layered effects.                      For more information, see the original paper at                      <http://okmij.org/ftp/Haskell/extensible/exteff.pdf>.                       Any help is appreciated!-Category:            Control, Effect-Author:              Oleg Kiselyov, Amr Sabry, Cameron Swords, Ben Foppa-Stability:           Experimental-Homepage:            https://github.com/RobotGymnast/extensible-effects-Maintainer:          suhailshergill@gmail.com-License:             MIT-Tested-With:         GHC==7.8.2-Build-Type:          Simple-Cabal-Version:       >= 1.9.2 +stability:           Experimental++-- URL for the project homepage or repository.+homepage:            https://github.com/RobotGymnast/extensible-effects++-- The license under which the package is released.+license:             MIT++-- The file containing the license text.+license-file:        LICENSE++-- The package author(s).+author:              Oleg Kiselyov, Amr Sabry, Cameron Swords, Ben Foppa++-- An email address to which users can send suggestions, bug reports, and+-- patches.+maintainer:          suhailshergill@gmail.com++-- A copyright notice.+-- copyright:++category:            Control, Effect++tested-with:         GHC==7.8.2++build-type:          Simple++-- Extra files to be distributed with the package, such as examples or a+-- README.+extra-source-files:  README.md++-- Constraint on the version of Cabal needed to build this package.+cabal-version:       >=1.10++ library-    hs-source-dirs:    src/-    ghc-options:       -Wall-    extensions:        Trustworthy-    exposed-modules:   Control.Eff+  ghc-options:         -Wall+  -- Modules exported by the library.+  exposed-modules:     Control.Eff                        Control.Eff.Choose                        Control.Eff.Coroutine                        Control.Eff.Cut@@ -38,12 +74,45 @@                        Control.Eff.Trace                        Data.OpenUnion1 -    build-depends: -                    base >= 4.6 && < 5-                    -- For MonadIO instance-                  , transformers >= 0.3 && < 0.5-                    -- For MonadBase instance-                  , transformers-base == 0.4.*+  -- Modules included in this library but not exported.+  -- other-modules:++  default-extensions:  Trustworthy+  -- LANGUAGE extensions used by modules in this package.+  other-extensions:    BangPatterns+                       , CPP+                       , DeriveDataTypeable+                       , DeriveFunctor+                       , EmptyDataDecls+                       , ExistentialQuantification+                       , FlexibleContexts+                       , FlexibleInstances+                       , FunctionalDependencies+                       , GeneralizedNewtypeDeriving+                       , KindSignatures+                       , MultiParamTypeClasses+                       , NoMonomorphismRestriction+                       , OverlappingInstances+                       , PatternGuards+                       , PolyKinds+                       , RankNTypes+                       , ScopedTypeVariables+                       , TupleSections+                       , TypeOperators+                       , UndecidableInstances++  -- Other library packages from which modules are imported.+  build-depends:       base >= 4.6 && < 5+                       -- For MonadIO instance+                       , transformers >= 0.3 && < 0.5+                       -- For MonadBase instance+                       , transformers-base == 0.4.*++  -- Directories containing source files.+  hs-source-dirs:      src++  -- Base language which the package is written in.+  default-language:    Haskell2010  test-suite extensible-effects-tests   type: exitcode-stdio-1.0