Patches for comparse supporting libraries
"Diego A. Mundo via Chicken-users" <[email protected]> Fri, 16 Jan 2026 01:17:19 +0000
| Newsgroups | gmane.lisp.scheme.chicken |
|---|---|
| Message-ID | <hk-P4Zd1iTxibLSqYqCEZMjk1DagMQm-wCe0O174Zir63x05ACTDNotcYO2b7s0qOMwni6JrtuJG3agaei0Xglat5eV_coFVKFWUtBzpBF8=@pm.me> |
I was looking at porting comparse. Attached are a couple of trivial patches to port comparse dependencies trie and lazy-seq to CHICKEN 6. Diego
trie-0001-Port-to-CHICKEN-6.patch
(text/x-patch, 1.1 KB)
From b6ad62859bf911265a1d5f7af6e0036831df0b86 Mon Sep 17 00:00:00 2001 From: "Diego A. Mundo" <[email protected]> Date: Tue, 13 Jan 2026 23:31:16 -0500 Subject: [PATCH] Port to CHICKEN 6 --- tests/run.scm | 6 +++++- trie.scm | 2 +- 2 files changed, 6 insertions(+), 2 deletions(-) diff --git a/tests/run.scm b/tests/run.scm index fbd4f86..cd667b8 100644 --- a/tests/run.scm +++ b/tests/run.scm @@ -1,10 +1,12 @@ (cond-expand (chicken-4 (use test)) - (chicken-5 (import (chicken load) test))) + ((or chicken-6 chicken-5) (import (chicken load) test))) (load-relative "../trie.scm") (import trie) +(test-begin) + (define trie (make-trie)) @@ -21,4 +23,6 @@ (define trie (test 'bar (trie-ref trie (string->list "heyo"))) (test 'baz (trie-ref trie (string->list "hex"))) +(test-end) + (test-exit) diff --git a/trie.scm b/trie.scm index bf89d56..f7a8ead 100644 --- a/trie.scm +++ b/trie.scm @@ -14,7 +14,7 @@ (module trie (chicken-4 (import chicken) (use srfi-1 data-structures)) - (chicken-5 + ((or chicken-6 chicken-5) (import (chicken base) srfi-1))) (define-record trie children value) -- 2.52.0
lazy-seq-0001-Port-to-CHICKEN-6.patch
(text/x-patch, 2.6 KB)
From e43f8d71116b1c6272e0899b9d5d3fc8b4c4310d Mon Sep 17 00:00:00 2001 From: "Diego A. Mundo" <[email protected]> Date: Tue, 13 Jan 2026 23:25:41 -0500 Subject: [PATCH] Port to CHICKEN 6 --- lazy-seq.scm | 37 +++++++++++++++++++++---------------- tests/run.scm | 11 ++++++++++- 2 files changed, 31 insertions(+), 17 deletions(-) diff --git a/lazy-seq.scm b/lazy-seq.scm index f39614b..300f717 100644 --- a/lazy-seq.scm +++ b/lazy-seq.scm @@ -42,7 +42,11 @@ (module lazy-seq (import chicken) (use srfi-1 extras)) (chicken-5 - (import (chicken base) srfi-1))) + (import (chicken base) srfi-1)) + (chicken-6 + (import (chicken base) + srfi-1 + (scheme case-lambda)))) (define-record lazy-seq body value) @@ -59,21 +63,22 @@ (define-syntax lazy-seq (make-lazy-seq (lambda () body ...))))) -(define-record-printer (lazy-seq seq out) - (display "#<lazy-" out) - (if (lazy-null? seq) - (display "null>" out) - (begin - (display "seq" out) - (let loop ((seq seq)) - (if (lazy-seq-realized? seq) - (if (lazy-null? seq) - (display ">" out) - (begin - (display " " out) - (write (lazy-head seq) out) - (loop (lazy-tail seq)))) - (display " ...>" out)))))) +(set-record-printer! lazy-seq + (lambda (seq out) + (display "#<lazy-" out) + (if (lazy-null? seq) + (display "null>" out) + (begin + (display "seq" out) + (let loop ((seq seq)) + (if (lazy-seq-realized? seq) + (if (lazy-null? seq) + (display ">" out) + (begin + (display " " out) + (write (lazy-head seq) out) + (loop (lazy-tail seq)))) + (display " ...>" out))))))) (define (lazy-seq-realized? seq) (not (lazy-seq-body seq))) diff --git a/tests/run.scm b/tests/run.scm index 11058b5..f4c5603 100644 --- a/tests/run.scm +++ b/tests/run.scm @@ -1,10 +1,17 @@ (cond-expand (chicken-4 (use test)) - (chicken-5 (import (chicken load) srfi-1 test))) + (chicken-5 (import (chicken load) srfi-1 test)) + (chicken-6 + (import (chicken load) + srfi-1 + test + (scheme base)))) (load-relative "../lazy-seq") (import lazy-seq) +(test-begin) + (test-group "custom lazy-seq" (define calls 0) @@ -210,4 +217,6 @@ (define (realized-prefix seq) (test '(0 1 2 3 4) (realized-prefix r)) (test '(0 1 2 3 4) (realized-prefix q)))) +(test-end) + (test-exit) -- 2.52.0