summary refs log tree commit diff
path: root/gnu
diff options
context:
space:
mode:
authorng0 <ng0@we.make.ritual.n0.is>2016-09-18 16:09:54 +0000
committerLeo Famulari <leo@famulari.name>2016-09-22 20:09:54 -0400
commit54c37341d1720c5cdd3772e729a419f2f46b6fb2 (patch)
tree462c8e2292d55de984e94f3a367011929e449c02 /gnu
parentf8270331020ed4051a4ef51151a2622bb95ef3b7 (diff)
downloadguix-54c37341d1720c5cdd3772e729a419f2f46b6fb2.tar.gz
gnu: Add ghc-transformers.
* gnu/packages/haskell.scm (ghc-transformers): New variable.

Signed-off-by: Leo Famulari <leo@famulari.name>
Diffstat (limited to 'gnu')
-rw-r--r--gnu/packages/haskell.scm29
1 files changed, 29 insertions, 0 deletions
diff --git a/gnu/packages/haskell.scm b/gnu/packages/haskell.scm
index 861f59456e..9205e958c0 100644
--- a/gnu/packages/haskell.scm
+++ b/gnu/packages/haskell.scm
@@ -6751,4 +6751,33 @@ preserved.  It also provides features for random access to archive content using
 an index.")
     (license license:bsd-3)))
 
+(define-public ghc-transformers
+  (package
+    (name "ghc-transformers")
+    (version "0.5.2.0")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (string-append
+             "https://hackage.haskell.org/package/transformers/transformers-"
+             version ".tar.gz"))
+       (sha256
+        (base32
+         "1qkhi8ssf8c4jnmrw9dzym3igqbzq7h48iisaykdfzdsm09qfh3c"))))
+    (build-system haskell-build-system)
+    (home-page "http://hackage.haskell.org/package/transformers")
+    (synopsis "Concrete functor and monad transformers")
+    (description
+     "A portable library of functor and monad transformers, inspired by the paper
+'Functional Programming with Overloading and Higher-Order Polymorphism',
+by Mark P Jones.  This package contains the monad transformer class and IO monad class,
+concrete functor and monad transformers, each with associated operations and functions
+to lift operations associated with other transformers.  The package can be used on
+its own in portable Haskell code, in which case operations need to be manually lifted
+through transformer stacks.  Alternatively, it can be used with the
+non-portable monad classes in the @code{mtl} or @code{monads-tf} packages,
+which automatically lift operations introduced by monad transformers through
+other transformers.")
+    (license license:bsd-3)))
+
 ;;; haskell.scm ends here