[ sisc-Bugs-776598 ] let-syntax scoping rules broken

"SourceForge.net" <[email protected]>
Newsgroups gmane.comp.java.sisc.devel
Message-ID <[email protected]>
Bugs item #776598, was opened at 2003-07-23 15:48
Message generated for change (Tracker Item Submitted) made by Item Submitter
You can respond by visiting: 
https://sourceforge.net/tracker/?func=detail&atid=379534&aid=776598&group_id=23735

Category: None
Group: None
Status: Open
Resolution: None
Priority: 6
Submitted By: Matthias Radestock (mradestock)
Assigned to: Nobody/Anonymous (nobody)
Summary: let-syntax scoping rules broken

Initial Comment:
psyntax's let-syntax and letrec deliberately deviate
from R5RS by being splicing constructs. There is a good
reason for that [Scott, do you remember what it is?].
However, in making this change some weirdness seems to
have been introduced:

SISC (1.8.1-alpha) - main
#;> (let-syntax ([foo (syntax-rules () [(_ x) 'x])])
(define-syntax bar (syntax-rules () [(_ x) (foo x)]))
(bar x))
x
#;> (bar x)
Error: identifier out of context foo

The "local" bar expansion works perfectly ok. The
top-level expansion breaks.

The same happens in the following:
#;> (define-syntax bar (let-syntax ([foo (syntax-rules
() [(_ x) 'x])]) (syntax-rules () [(_ x) (foo x)])))
#;> (bar x)
Error: identifier out of context foo

This just doesn't seem right.

----------------------------------------------------------------------

You can respond by visiting: 
https://sourceforge.net/tracker/?func=detail&atid=379534&aid=776598&group_id=23735


-------------------------------------------------------
This SF.Net email sponsored by: Free pre-built ASP.NET sites including
Data Reports, E-commerce, Portals, and Forums are available now.
Download today and enter to win an XBOX or Visual Studio .NET.
http://aspnet.click-url.com/go/psa00100003ave/direct;at.aspnet_072303_01/01
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.