guix-commits
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

13/17: gnu: Add ocaml-parmap.


From: guix-commits
Subject: 13/17: gnu: Add ocaml-parmap.
Date: Fri, 2 Jun 2023 11:24:04 -0400 (EDT)

civodul pushed a commit to branch master
in repository guix.

commit bb7f978e602dec3b303bc88ee2e402c7b7645b6d
Author: Jean-Pierre De Jesus DIAZ <jean@foundationdevices.com>
AuthorDate: Sun May 21 13:34:14 2023 +0200

    gnu: Add ocaml-parmap.
    
    * gnu/packages/ocaml.scm (ocaml-parmap): New variable.
    
    Signed-off-by: Jean-Pierre De Jesus DIAZ <jean@foundationdevices.com>
    Signed-off-by: Ludovic Courtès <ludo@gnu.org>
---
 gnu/packages/ocaml.scm | 37 +++++++++++++++++++++++++++++++++++++
 1 file changed, 37 insertions(+)

diff --git a/gnu/packages/ocaml.scm b/gnu/packages/ocaml.scm
index f0b8f9e912..08036ba401 100644
--- a/gnu/packages/ocaml.scm
+++ b/gnu/packages/ocaml.scm
@@ -28,6 +28,7 @@
 ;;; Copyright © 2022 John Kehayias <john.kehayias@protonmail.com>
 ;;; Copyright © 2022 Garek Dyszel <garekdyszel@disroot.org>
 ;;; Copyright © 2023 Csepp <raingloom@riseup.net>
+;;; Copyright © 2023 Foundation Devices, Inc. <hello@foundationdevices.com>
 ;;;
 ;;; This file is part of GNU Guix.
 ;;;
@@ -2698,6 +2699,42 @@ simple (yet expressive) query language to select the 
tests to run.")
 syntactic tools.")
     (license license:expat)))
 
+(define-public ocaml-parmap
+  (package
+    (name "ocaml-parmap")
+    (version "1.2.5")
+    (source
+     (origin
+       (method git-fetch)
+       (uri (git-reference
+             (url "https://github.com/rdicosmo/parmap";)
+             (commit version)))
+       (file-name (git-file-name name version))
+       (sha256
+        (base32
+         "0x5gnfap9f7kmgh8j725vxlbkvlplwzbpn8jdx2ywfa3dd6bn6xl"))))
+    (build-system dune-build-system)
+    (propagated-inputs
+     (list ocaml-odoc))
+    (home-page "https://github.com/rdicosmo/parmap";)
+    (synopsis "Parallel map and fold primtives for OCaml")
+    (description
+     "Library to perform parallel fold or map taking advantage of multiple
+core architectures for OCaml programs.  Drop-in replacement for these
+@code{List} operations are provided:
+
+@itemize
+@item @code{List.map} -> @code{parmap}
+@item @code{List.map} -> @code{parfold}
+@item @code{List.mapfold} -> @code{parmapfold}
+@end itemize
+
+Also it allows specifying the number of cores to use with the optional
+parameter @code{ncores}.")
+    (license (list license:lgpl2.0
+                   (license:fsdg-compatible "file://LICENSE"
+                                            "See LICENSE file for details")))))
+
 (define-public ocaml-react
   (package
     (name "ocaml-react")



reply via email to

[Prev in Thread] Current Thread [Next in Thread]