bug#73605: [PATCH] Replace SRFI-64 with a new implementation.
Ludovic Courtès <[email protected]> Sun, 13 Oct 2024 22:09:36 +0200
| Newsgroups | gmane.lisp.guile.bugs |
|---|---|
| Message-ID | <[email protected]> |
Hi Tomas, Tomas Volf <[email protected]> skribis: > The bundled (reference) implementation was of somewhat mixed quality and > it failed to follow standard in multiple places. This commit replaces > it with a new one, written from scratch to follow the standard as close > as possible. > > * module/srfi/srfi-64/testing.scm: Delete file. > * module/srfi/srfi-64.scm: Replace with new implementation. > * am/bootstrap.am (srfi/srfi-64.go): Remove extra dependencies. > (NOCOMP_SOURCES): Remove srfi/srfi-64/testing.scm. > * test-suite/tests/srfi-64-test.scm > ("8.6.1. Simple (form 1) test-apply") > ("8.6.2. Simple (form 2) test-apply"): Adjust tests to follow the > specification. Nice work! Andy, Rob: I’m willing to apply this patch as I think it’s an improvement over the reference implementation that we currently have, and whose weaknesses Tomas described at length in <https://wolfsden.cz/blog/post/state-of-srfi-64.html>. The fact that this new implementation was successfully tested with the test suite of Guix (probably the largest SRFI-64 user) is also reassuring to me. Everyone, please speak up if you object. If there are no objections within a week or so, I’d like to apply it. Thanks, Ludo’.