aboutsummaryrefslogtreecommitdiff
path: root/gnu
diff options
context:
space:
mode:
authorrsiddharth <s@ricketyspace.net>2017-10-18 03:07:53 +0000
committerLudovic Courtès <ludo@gnu.org>2017-10-22 15:32:18 -0700
commitf6094850d0893ad27a513a0381028ce1f5fb93c7 (patch)
treedfe27a4ee969e67857f8198ccbb25ea1a8077c1d /gnu
parent1896a2526d1db209afb0a8a55a63dc4c1162c539 (diff)
downloadpatches-f6094850d0893ad27a513a0381028ce1f5fb93c7.tar
patches-f6094850d0893ad27a513a0381028ce1f5fb93c7.tar.gz
gnu: Add ghc-foldl.
* gnu/packages/haskell.scm (ghc-foldl): New variable. Signed-off-by: Ludovic Courtès <ludo@gnu.org>
Diffstat (limited to 'gnu')
-rw-r--r--gnu/packages/haskell.scm32
1 files changed, 32 insertions, 0 deletions
diff --git a/gnu/packages/haskell.scm b/gnu/packages/haskell.scm
index 977789d3da..e9660431ca 100644
--- a/gnu/packages/haskell.scm
+++ b/gnu/packages/haskell.scm
@@ -9932,4 +9932,36 @@ the vector; then you can execute the builder to actually produce the
vector. ")
(license license:expat)))
+(define-public ghc-foldl
+ (package
+ (name "ghc-foldl")
+ (version "1.3.2")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (string-append "https://hackage.haskell.org/package/"
+ "foldl-" version "/"
+ "foldl-" version ".tar.gz"))
+ (sha256
+ (base32
+ "1z3xjz4khs2kr3mqkbh7dz4kd6gkdk2r67wjkvrxnmp533aqh90n"))))
+ (build-system haskell-build-system)
+ (inputs `(("ghc-mwc-randam" ,ghc-mwc-random)
+ ("ghc-primitive" ,ghc-primitive)
+ ("ghc-text" ,ghc-text)
+ ("ghc-vector" ,ghc-vector)
+ ("ghc-unordered-containers" ,ghc-unordered-containers)
+ ("ghc-hashable" ,ghc-hashable)
+ ("ghc-contravariant" ,ghc-contravariant)
+ ("ghc-profunctors" ,ghc-profunctors)
+ ("ghc-comonad" ,ghc-comonad)
+ ("ghc-vector-builder" ,ghc-vector-builder)))
+ (home-page "https://github.com/Gabriel439/Haskell-Foldl-Library")
+ (synopsis "Composable, streaming, and efficient left folds for Haskell")
+ (description "This Haskell library provides strict left folds that stream
+in constant memory, and you can combine folds using @code{Applicative} style
+to derive new folds. Derived folds still traverse the container just once
+and are often as efficient as hand-written folds.")
+ (license license:bsd-3)))
+
;;; haskell.scm ends here