1
Fork 0
mirror of https://git.savannah.gnu.org/git/guile.git synced 2025-06-29 22:40:34 +02:00

Convert srfi-197 implementation and tests to modules

https://srfi.schemers.org/srfi-197/srfi-197.html

* NEWS: mention SRFI 197 support.
* am/bootstrap.am: Add srfi-197.scm.
* module/srfi/srfi-197.scm: Convert to module.
* test-suite/Makefile.am: Add srfi-197.sr64.
* test-suite/tests/srfi-197.sr64: Renamed from srfi-197.test.
* test-suite/tests/srfi-197.test: Port to Guile; rename to srfi-197.sr64.
This commit is contained in:
Rob Browning 2025-04-13 17:35:53 -05:00
parent 2d602d28c3
commit 36ba0aa655
5 changed files with 38 additions and 4 deletions

View file

@ -1,3 +1,5 @@
;;;; srfi-197.scm --- SRFI 197: Pipeline Operators
;;;; SPDX-FileCopyrightText: 2020 Adam R. Nelson <adam@nels.onl>
;;;;
;;;; SPDX-License-Identifier: MIT
@ -26,9 +28,19 @@
;;;; CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
;;;; SOFTWARE.
; A syntax-case implementation of SRFI 197.
; This should be functionally equivalent to srfi-197.scm,
; but it may be easier to read and understand.
;;; Commentary:
;;;
;;; This is an implementation of SRFI 197: Pipeline Operators taken from
;;; the reference implementation's srfi-197-syntax-case.scm.
;;;
;;; Code:
(define-module (srfi srfi-197)
#:use-module ((scheme base) #:select (eof-object let-values))
#:use-module (srfi srfi-2)
#:export (chain chain-and chain-lambda chain-when nest nest-reverse))
(cond-expand-provide (current-module) '(srfi-197))
(define (gentemp) (car (generate-temporaries '(x))))