diff options
| author | 2026-03-11 11:53:30 -0400 | |
|---|---|---|
| committer | 2026-03-11 11:53:30 -0400 | |
| commit | eb8f2d73c4649f38f34d182fa46d3747286c1096 (patch) | |
| tree | 125d6a0d1e5e1fae4badeedc94a6834ae6cbceb3 | |
| parent | actual 0.3.0 (diff) | |
| -rw-r--r-- | README.md | 2 | ||||
| -rw-r--r-- | lib/hascheme/base.scm | 11 | ||||
| -rw-r--r-- | lib/hascheme/base.sld | 6 |
3 files changed, 10 insertions, 9 deletions
@@ -53,7 +53,7 @@ See also [Lazy Racket][LazyRacket]. HaScheme is licensed under the 0BSD license. -HaScheme is tested to work in CHICKEN 6.0.0 latest master. +HaScheme is tested to work in CHICKEN 6.0.0 latest master and TR7 2.0.17. ## Restrictions and Implementation Notes diff --git a/lib/hascheme/base.scm b/lib/hascheme/base.scm index 7a2a7a5..09a04ab 100644 --- a/lib/hascheme/base.scm +++ b/lib/hascheme/base.scm @@ -122,11 +122,12 @@ (cstr-tmp etc ...) predicate-tmp (field accessor-tmp) ...) - (define-wrappers-for-lazy ((cstr field ...) cstr-tmp)) - (define-wrappers-from-strict - ;; Record type - ((predicate x) predicate-tmp) - ((accessor x) accessor-tmp) ...) + (define (cstr field ...) + (cstr-tmp field ...)) + (define (predicate obj) + (predicate-tmp (! obj))) + (define (accessor obj) + (accessor-tmp (! obj))) ... (r7rs:values cstr predicate accessor ...)))))) (define (apply proc . arguments) diff --git a/lib/hascheme/base.sld b/lib/hascheme/base.sld index 1935b6c..2fa1b16 100644 --- a/lib/hascheme/base.sld +++ b/lib/hascheme/base.sld @@ -4,13 +4,13 @@ quote define-syntax let-syntax letrec-syntax let* letrec letrec*) - r7rs) + r7rs:) (only (scheme base) define-syntax quote let* letrec letrec* let-syntax letrec-syntax))) (else (import (prefix (except (scheme base) quote define-syntax syntax-rules let-syntax letrec-syntax - let* letrec letrec* ... _) + let* letrec letrec*) r7rs:) (only (scheme base) define-syntax syntax-rules quote let* letrec letrec* ... _ let-syntax letrec-syntax)))) @@ -70,6 +70,6 @@ ;; Ports eof-object eof-object?) (cond-expand - ((not chicken tr7) (export _ ... =>)) + ((not (or chicken tr7)) (export _ ... =>)) (else)) (include "base.scm"))
\ No newline at end of file |
