summary refs log tree commit diff
path: root/gnu/packages/haskell-xyz.scm
diff options
context:
space:
mode:
authorzamfofex <zamfofex@twdb.moe>2023-06-14 09:48:53 -0300
committerLudovic Courtès <ludo@gnu.org>2023-07-07 15:30:23 +0200
commit87bf63df6b77d4b97f3c3350968d8da7a3884c6a (patch)
tree76e13467d0806753914c1bb6a5151e6cc58e7dee /gnu/packages/haskell-xyz.scm
parent6b10501defee25e6ea87ed597d5a344a4e7410bf (diff)
downloadguix-87bf63df6b77d4b97f3c3350968d8da7a3884c6a.tar.gz
gnu: Add ghc-dependent-map.
* gnu/packages/haskell-xyz.scm (ghc-dependent-map): New variable.

Co-authored-by: Ludovic Courtès <ludo@gnu.org>
Diffstat (limited to 'gnu/packages/haskell-xyz.scm')
-rw-r--r--gnu/packages/haskell-xyz.scm27
1 files changed, 27 insertions, 0 deletions
diff --git a/gnu/packages/haskell-xyz.scm b/gnu/packages/haskell-xyz.scm
index a546cd2a4b..55893404a6 100644
--- a/gnu/packages/haskell-xyz.scm
+++ b/gnu/packages/haskell-xyz.scm
@@ -13193,6 +13193,33 @@ allows you to define your own dependent sum types by using your own \"tag\"
 types.")
     (license license:public-domain)))
 
+(define-public ghc-dependent-map
+  (package
+    (name "ghc-dependent-map")
+    (version "0.4.0.0")
+    (source (origin
+              (method url-fetch)
+              (uri (hackage-uri "dependent-map" version))
+              (sha256
+               (base32
+                "0b0zhyl3wkl4kkrxvq7vwjz3gn0ndxjjgyw9cky8a6xyv190pkjk"))))
+    (build-system haskell-build-system)
+    (properties '((upstream-name . "dependent-map")))
+    (inputs (list ghc-dependent-sum ghc-constraints-extras))
+    (arguments
+     `(#:cabal-revision ("1"
+                         "160p9crvlx1sn60inkwxa6mv1h2d4fgqnpsb2km67zrkpdfyd2s2")))
+    (home-page "https://github.com/obsidiansystems/dependent-map")
+    (synopsis "Dependent finite maps (partial dependent products)")
+    (description
+     "This package provides a type called @@DMap@@ which generalizes @@Data.Map.Map@@,
+allowing keys to specify the type of value that can be associated with them.")
+
+    ;; XXX: The 'LICENSE' file lists several licenses, stating "I have no idea
+    ;; which, if any, of the following licenses apply […].  Any modifications
+    ;; by myself I release into the public domain […]"."
+    (license license:public-domain)))
+
 (define-public ghc-unsafe
   (package
     (name "ghc-unsafe")