diff mbox series

[bug#52784,2/5] Update XMonad (and add new dependencies)

Message ID 1tlUn_67MAFJiBN4BVeunQTBFZhX9lQfK9ZRjTmY0solgLP1fAdeSQoMJsdoR31YWPJv4cqAckDSJK-YhWZO9xe6L8CUaQ4uBSGWtLTvuZY=@protonmail.com
State Accepted
Headers show
Series Update XMonad (and add new dependencies) | expand

Checks

Context Check Description
cbaines/comparison success View comparision
cbaines/git branch success View Git branch
cbaines/applying patch fail View Laminar job
cbaines/issue success View issue
cbaines/comparison success View comparision
cbaines/git branch success View Git branch
cbaines/applying patch fail View Laminar job
cbaines/issue success View issue
cbaines/comparison success View comparision
cbaines/git branch success View Git branch
cbaines/comparison success View comparision
cbaines/git branch success View Git branch
cbaines/applying patch fail View Laminar job
cbaines/issue success View issue
cbaines/applying patch fail View Laminar job
cbaines/issue success View issue
cbaines/comparison success View comparision
cbaines/git branch success View Git branch
cbaines/applying patch fail View Laminar job
cbaines/issue success View issue

Commit Message

John Kehayias Dec. 24, 2021, 7:29 p.m. UTC
Empty Message
diff mbox series

Patch

From aee88dedea562c405d38eb4dc1a2164b52281600 Mon Sep 17 00:00:00 2001
From: John Kehayias <john.kehayias@protonmail.com>
Date: Fri, 24 Dec 2021 13:51:33 -0500
Subject: [PATCH 2/5] gnu: Add ghc-semirings.

* gnu/packages/haskell-xyz.scm (ghc-semirings): New variable.
---
 gnu/packages/haskell-xyz.scm | 34 ++++++++++++++++++++++++++++++++++
 1 file changed, 34 insertions(+)

diff --git a/gnu/packages/haskell-xyz.scm b/gnu/packages/haskell-xyz.scm
index 7649e4922d..9e6df24093 100644
--- a/gnu/packages/haskell-xyz.scm
+++ b/gnu/packages/haskell-xyz.scm
@@ -11398,6 +11398,40 @@  (define-public ghc-semigroups-bootstrap
            ghc-unordered-containers-bootstrap ghc-hashable-bootstrap))
     (properties '((hidden? #t)))))
 
+(define-public ghc-semirings
+  (package
+    (name "ghc-semirings")
+    (version "0.6")
+    (source
+      (origin
+        (method url-fetch)
+        (uri (string-append
+               "https://hackage.haskell.org/package/semirings/semirings-"
+               version
+               ".tar.gz"))
+        (sha256
+          (base32 "16q535bvjl7395sqkx6zlw48y4fzr7irp44pcp7w9irpn4cncdcr"))))
+    (build-system haskell-build-system)
+    (inputs
+      (list ghc-base-compat-batteries ghc-hashable ghc-unordered-containers))
+    (arguments
+      `(#:cabal-revision
+        ("1" "1c06yhfa053sv3rfz0d72a33l5qb0xmj1b3hy2z7pzxrcay6g1yc")))
+    (home-page "https://github.com/chessai/semirings")
+    (synopsis "Two monoids as one, in holy haskimony")
+    (description
+     "Haskellers are usually familiar with monoids and semigroups.  A monoid has an
+appending operation @code{<>} (or @code{mappend}), and an identity element,
+@code{mempty}.  A semigroup has an appending @code{<>} operation, but does not
+require a @code{mempty} element.  A Semiring has two appending operations,
+@code{plus} and @code{times}, and two respective identity elements,
+@code{zero} and @code{one}.  More formally, a Semiring R is a set equipped
+with two binary relations @code{+} and @code{*}, such that: (R,+) is a
+commutative monoid with identity element 0, (R,*) is a monoid with identity
+element 1, (*) left and right distributes over addition, and . multiplication
+by @code{0} annihilates R.")
+    (license license:bsd-3)))
+
 (define-public ghc-serialise
   (package
     (name "ghc-serialise")
-- 
2.34.1