aboutsummaryrefslogtreecommitdiff
path: root/gnu/packages/guile-xyz.scm
diff options
context:
space:
mode:
Diffstat (limited to 'gnu/packages/guile-xyz.scm')
-rw-r--r--gnu/packages/guile-xyz.scm68
1 files changed, 68 insertions, 0 deletions
diff --git a/gnu/packages/guile-xyz.scm b/gnu/packages/guile-xyz.scm
index a85c7e0fc4..8ba38c87d8 100644
--- a/gnu/packages/guile-xyz.scm
+++ b/gnu/packages/guile-xyz.scm
@@ -3086,6 +3086,36 @@ pre-alpha code.")
parameters, which define* and lambda* special forms")
(license license:gpl3+)))
+(define-public guile-srfi-128
+ (package
+ (name "guile-srfi-128")
+ (version "0.1.0")
+ (source
+ (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://inqlab.net/git/guile-srfi-128.git")
+ (commit (string-append "v" version))))
+ (sha256
+ (base32
+ "03d85q5l2gc2c8cmri6zd4pfndvnadlhwh77hsx6ixvvm8vwq4sy"))
+ (file-name (git-file-name name version))))
+ (build-system guile-build-system)
+ (native-inputs
+ (list guile-3.0))
+ (home-page "https://inqlab.net/git/guile-srfi-128.git")
+ (synopsis "SRFI 128 Comparators (reduced) port for Guile")
+ (description
+ "This package provides an implementation of SRFI 128 for Guile.
+SRFI 128 defines comparators, which bundles a test type predicate, an
+equality predicate, an ordering predicate and a hash function into a
+single Scheme object. This can be used in the implementation of data
+structures. This package re-uses the SRFI sample implementation.")
+ (license
+ (list license:lgpl3+
+ ;; contains ISC code from the SRFI sample implementation
+ license:isc))))
+
(define-public guile-srfi-145
(package
(name "guile-srfi-145")
@@ -3110,6 +3140,44 @@ parameters, which define* and lambda* special forms")
denote the invalidity of certain code paths in a Scheme program.")
(license license:gpl3+)))
+(define-public guile-srfi-146
+ (package
+ (name "guile-srfi-146")
+ (version "0.1.0")
+ (source
+ (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://inqlab.net/git/guile-srfi-146.git")
+ (commit (string-append "v" version))))
+ (sha256
+ (base32
+ "13dbzlav4fql8lcfr021z5368lwri6i15x0ykv8llzyghlbbx2w6"))
+ (file-name (git-file-name name version))))
+ (build-system gnu-build-system)
+ (native-inputs
+ (list guile-3.0
+ guile-srfi-128 guile-srfi-145 guile-srfi-158
+ autoconf automake pkg-config))
+ (inputs (list guile-3.0))
+ (propagated-inputs
+ (list guile-srfi-128 guile-srfi-145 guile-srfi-158))
+ (synopsis "SRFI 146 (Mappings) for Guile")
+ (description
+ "This package provides an implementation of SRFI 146 for Guile.
+SRFI 146 defines datastructures that implement mappings (finite sets
+of associations consiting of a key and a value). Two types of
+mappings are defined: One using a comparator to define an order on the
+keys and another using a hash function on the keys. The
+datastructures and procedures are by default purely-functional. This
+package re-uses the SRFI sample implementation that is based on
+red-black trees and Hash Array Mapped Trie (HAMT).")
+ (home-page "https://inqlab.net/git/guile-srfi-146.git")
+ (license
+ (list license:lgpl3+
+ ;; contains ISC code from the SRFI sample implementation
+ license:isc))))
+
(define-public guile-srfi-158
(let ((commit "13126d1ed37892c864337a600a43d6876625fb99")
(revision "0"))