chicken-janitors
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Chicken-janitors] #1306: The body of a syntax definer should be allowed


From: Chicken Trac
Subject: [Chicken-janitors] #1306: The body of a syntax definer should be allowed to be a macro call
Date: Sun, 17 Jul 2016 00:37:48 -0000

#1306: The body of a syntax definer should be allowed to be a macro call
------------------------+---------------------
 Reporter:  johnwcowan  |      Owner:
     Type:  defect      |     Status:  new
 Priority:  major       |  Milestone:  someday
Component:  unknown     |    Version:  4.11.0
 Keywords:              |
------------------------+---------------------
 Currently Chicken doesn't support things like this:

 {{{
 (define (baz) 32)

 (define-syntax foo
   (syntax-rules ()
     ((foo) (syntax-rules () ((bar) (baz)))))))

 (define-syntax quux (foo)) ; fails with "foo not defined"

 }}}

 On most Schemes that support macro varieties other than syntax-rules (and
 therefore extend R5RS in this situation), macro calls are expanded in this
 position, and `(quux)` evaluates to 32.  However, on Chicken they aren't.
 They should be.

--
Ticket URL: <http://bugs.call-cc.org/ticket/1306>
CHICKEN Scheme <https://www.call-cc.org/>
CHICKEN Scheme is a compiler for the Scheme programming language.

reply via email to

[Prev in Thread] Current Thread [Next in Thread]