[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [Chicken-janitors] #1309: CHICKEN allows misplaced internal defines,
From: |
Chicken Trac |
Subject: |
Re: [Chicken-janitors] #1309: CHICKEN allows misplaced internal defines, which live on outside the body |
Date: |
Sun, 26 Feb 2017 16:37:04 -0000 |
#1309: CHICKEN allows misplaced internal defines, which live on outside the body
---------------------------------------+--------------------------------
Reporter: ai-artisan | Owner:
Type: defect | Status: new
Priority: critical | Milestone: 5.0
Component: core libraries | Version: 4.11.0
Resolution: | Keywords: record type define
Estimated difficulty: hard |
---------------------------------------+--------------------------------
Comment (by sjamaan):
Because there's no r7rs egg for CHICKEN 5 yet, here's a testcase that
contains just the minimum required code for r7rs define-record-type:
{{{
(begin-for-syntax
(define (macro-handler name)
(cond ((assq name (##sys#macro-environment)) => caddr)
(else #f)))
(define (wrap-er-macro-transformer name handler)
(er-macro-transformer
(let ((orig (macro-handler name)))
(lambda (x r c)
(let ((e (##sys#current-environment)))
(handler x r c (lambda (x*) (orig x* '() e)))))))))
(let ()
(define-record-type bug
(make-bug)
bug?) )
(define b (make-bug))
(display (bug? b))
(newline)
}}}
--
Ticket URL: <https://bugs.call-cc.org/ticket/1309#comment:16>
CHICKEN Scheme <https://www.call-cc.org/>
CHICKEN Scheme is a compiler for the Scheme programming language.
[Prev in Thread] |
Current Thread |
[Next in Thread] |
- Re: [Chicken-janitors] #1309: CHICKEN allows misplaced internal defines, which live on outside the body,
Chicken Trac <=