mirror of
https://codeberg.org/guix/guix.git
synced 2025-10-02 02:15:12 +00:00
gnu: Add guile-srfi-125.
* gnu/packages/patches/guile-srfi-125-fix-r7rs-rename-clause.patch: New file. * gnu/local.mk (dist_patch_DATA): New entry for patch. * gnu/packages/guile-xyz.scm (guile-srfi-125): New variable. Change-Id: I4cbe67f67278a2be362a6e5a54a79dacae41011e Signed-off-by: Zheng Junjie <z572@z572.online>
This commit is contained in:
parent
75069c147b
commit
f7fb7734fa
3 changed files with 101 additions and 0 deletions
|
@ -2307,6 +2307,7 @@ dist_patch_DATA = \
|
||||||
%D%/packages/patches/softhsm-fix-openssl3-tests.patch \
|
%D%/packages/patches/softhsm-fix-openssl3-tests.patch \
|
||||||
%D%/packages/patches/spectre-meltdown-checker-externalize-fwdb.patch \
|
%D%/packages/patches/spectre-meltdown-checker-externalize-fwdb.patch \
|
||||||
%D%/packages/patches/sphinxbase-fix-doxygen.patch \
|
%D%/packages/patches/sphinxbase-fix-doxygen.patch \
|
||||||
|
%D%/packages/patches/guile-srfi-125-fix-r7rs-rename-clause.patch \
|
||||||
%D%/packages/patches/sssd-system-directories.patch \
|
%D%/packages/patches/sssd-system-directories.patch \
|
||||||
%D%/packages/patches/steghide-fixes.patch \
|
%D%/packages/patches/steghide-fixes.patch \
|
||||||
%D%/packages/patches/suitesparse-mongoose-cmake.patch \
|
%D%/packages/patches/suitesparse-mongoose-cmake.patch \
|
||||||
|
|
|
@ -4470,6 +4470,58 @@ pre-alpha code.")
|
||||||
parameters, which define* and lambda* special forms")
|
parameters, which define* and lambda* special forms")
|
||||||
(license license:gpl3+)))
|
(license license:gpl3+)))
|
||||||
|
|
||||||
|
(define-public guile-srfi-125
|
||||||
|
(let ((revision "0")
|
||||||
|
(commit "556827a4b88b43acc0b941ac3f7f926ffad27e42"))
|
||||||
|
(package
|
||||||
|
(name "guile-srfi-125")
|
||||||
|
(version (git-version "0.0.1" revision commit))
|
||||||
|
(source
|
||||||
|
(origin
|
||||||
|
(method git-fetch)
|
||||||
|
(uri (git-reference
|
||||||
|
(url
|
||||||
|
"https://github.com/scheme-requests-for-implementation/srfi-125")
|
||||||
|
(commit commit)))
|
||||||
|
(file-name (git-file-name name version))
|
||||||
|
(sha256
|
||||||
|
(base32 "0dy839sq14h9y6fi4i27pli4xgz92zsswndad4fi0271rs2c26zy"))
|
||||||
|
(patches (search-patches "guile-srfi-125-fix-r7rs-rename-clause.patch"))
|
||||||
|
(snippet #~(begin
|
||||||
|
(rename-file "srfi/125.sld" "srfi/srfi-125.scm")
|
||||||
|
(delete-file "tables-test.sps")))))
|
||||||
|
(build-system guile-build-system)
|
||||||
|
(arguments (list #:not-compiled-file-regexp "body\\.scm$"))
|
||||||
|
(inputs (list guile-3.0))
|
||||||
|
(native-inputs (list guile-3.0 guile-srfi-126 guile-srfi-128))
|
||||||
|
(propagated-inputs (list guile-srfi-126 guile-srfi-128))
|
||||||
|
(home-page
|
||||||
|
"https://github.com/scheme-requests-for-implementation/srfi-125")
|
||||||
|
(synopsis "SRFI 125: Intermediate hash tables")
|
||||||
|
(description
|
||||||
|
"Procedures in this SRFI are drawn primarily from SRFI 69 and R6RS. In
|
||||||
|
addition, the following sources are acknowledged:
|
||||||
|
@itemize
|
||||||
|
@item @code{hash-table-mutable?} procedure and the second argument of
|
||||||
|
@code{hash-table-copy} (which allows the creation of immutable hash tables)
|
||||||
|
are from R6RS, renamed in the style of this SRFI.
|
||||||
|
@item @code{hash-table-intern!} procedure is from Racket, renamed in the style
|
||||||
|
of this SRFI.
|
||||||
|
@item @code{hash-table-find} procedure is a modified version of
|
||||||
|
@code{table-search} in Gambit.
|
||||||
|
@item procedures @code{hash-table-unfold} and @code{hash-table-count} were
|
||||||
|
suggested by SRFI 1.
|
||||||
|
@item procedures @code{hash-table=?} and @code{hash-table-map} were suggested
|
||||||
|
by Haskell's @code{Data.Map.Strict} module.
|
||||||
|
@item procedure @code{hash-table-map->list} is from Guile.
|
||||||
|
@end itemize
|
||||||
|
|
||||||
|
The procedures @code{hash-table-empty?}, @code{hash-table-empty-copy},
|
||||||
|
@code{hash-table-pop!}, @code{hash-table-map!},
|
||||||
|
@code{hash-table-intersection!}, @code{hash-table-difference!}, and
|
||||||
|
@code{hash-table-xor!} were added for convenience and completeness.")
|
||||||
|
(license license:expat))))
|
||||||
|
|
||||||
(define-public guile-srfi-126
|
(define-public guile-srfi-126
|
||||||
(let ((revision "0")
|
(let ((revision "0")
|
||||||
(commit "f480cf2d1a33c1f3d0fab3baf321c0ed5b5eb248"))
|
(commit "f480cf2d1a33c1f3d0fab3baf321c0ed5b5eb248"))
|
||||||
|
|
|
@ -0,0 +1,48 @@
|
||||||
|
From 8f4942f0612b6cc6af56fc90146afcccfe67d85f Mon Sep 17 00:00:00 2001
|
||||||
|
From: Grigory Shepelev <shegeley@gmail.com>
|
||||||
|
Date: Sat, 25 May 2024 10:32:28 +0300
|
||||||
|
Subject: [PATCH] srfi/125.sld: conform "rename" clause to r6rs
|
||||||
|
|
||||||
|
---
|
||||||
|
srfi/125.sld | 25 ++++++++++++-------------
|
||||||
|
1 file changed, 12 insertions(+), 13 deletions(-)
|
||||||
|
|
||||||
|
diff --git a/srfi/125.sld b/srfi/125.sld
|
||||||
|
index 08d9ac1..467c6a8 100644
|
||||||
|
--- a/srfi/125.sld
|
||||||
|
+++ b/srfi/125.sld
|
||||||
|
@@ -53,19 +53,18 @@
|
||||||
|
|
||||||
|
;; The following procedures are deprecated by SRFI 125:
|
||||||
|
|
||||||
|
- (rename deprecated:hash hash)
|
||||||
|
- (rename deprecated:string-hash string-hash)
|
||||||
|
- (rename deprecated:string-ci-hash string-ci-hash)
|
||||||
|
- (rename deprecated:hash-by-identity hash-by-identity)
|
||||||
|
-
|
||||||
|
- (rename deprecated:hash-table-equivalence-function
|
||||||
|
- hash-table-equivalence-function)
|
||||||
|
- (rename deprecated:hash-table-hash-function hash-table-hash-function)
|
||||||
|
- (rename deprecated:hash-table-exists? hash-table-exists?)
|
||||||
|
- (rename deprecated:hash-table-walk hash-table-walk)
|
||||||
|
- (rename deprecated:hash-table-merge! hash-table-merge!)
|
||||||
|
-
|
||||||
|
- )
|
||||||
|
+ (rename
|
||||||
|
+ (deprecated:hash hash)
|
||||||
|
+ (deprecated:string-hash string-hash)
|
||||||
|
+ (deprecated:string-ci-hash string-ci-hash)
|
||||||
|
+ (deprecated:hash-by-identity hash-by-identity)
|
||||||
|
+ (deprecated:string-ci-hash string-ci-hash)
|
||||||
|
+ (deprecated:hash-by-identity hash-by-identity)
|
||||||
|
+ (deprecated:hash-table-equivalence-function hash-table-equivalence-function)
|
||||||
|
+ (deprecated:hash-table-hash-function hash-table-hash-function)
|
||||||
|
+ (deprecated:hash-table-exists? hash-table-exists?)
|
||||||
|
+ (deprecated:hash-table-walk hash-table-walk)
|
||||||
|
+ (deprecated:hash-table-merge! hash-table-merge!)))
|
||||||
|
|
||||||
|
(import (scheme base)
|
||||||
|
(scheme write) ; for warnings about deprecated features
|
||||||
|
--
|
||||||
|
2.49.0
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue