[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Chicken-janitors] #209: Chicken allows for shadowing syntax in a way di
From: |
Chicken Trac |
Subject: |
[Chicken-janitors] #209: Chicken allows for shadowing syntax in a way disallowed by R5RS/sec.5.3 |
Date: |
Sat, 10 Apr 2010 17:57:38 -0000 |
#209: Chicken allows for shadowing syntax in a way disallowed by R5RS/sec.5.3
----------------------+-----------------------------------------------------
Reporter: jeronimo | Owner:
Type: defect | Status: new
Priority: minor | Milestone: 4.5.0
Component: unknown | Version:
Keywords: |
----------------------+-----------------------------------------------------
Hi,
With master/HEAD, (latest commit is
8acb3f92df82f369fc5dbef8f7c44a68468a92c3):
{{{
#;7> (define define (lambda () 'z))
#;8> define
#<procedure (define)>
#;9> (define)
Error: (car) during expansion of (define ...) - bad argument type: ()
Call history:
<syntax> (define) <--
#;9> (let ((a define)) (a))
z
#;10>
}}}
But section 5.3 of R5RS explicitly disallows defining define among other
things (it mentions "(define define 3)" as an example of error, and
Chicken allows it).
This is not listed in the "Deviations form the standard" section of the
manual, so it's not clear if it's a bug or an intended deviation.
P.S.: Bigloo does the same;
Chibi signals an error;
Guile shadows the define syntax even when it's in procedure-calling
position: "(define)" above works in Guile and returns the symbol z!
--
Ticket URL: <http://www.irp.oist.jp/trac/chicken/ticket/209>
Chicken Scheme <http://www.call-with-current-continuation.org/>
Chicken Scheme is a compiler for the Scheme programming language.
- [Chicken-janitors] #209: Chicken allows for shadowing syntax in a way disallowed by R5RS/sec.5.3,
Chicken Trac <=
- [Chicken-janitors] Re: #209: Chicken allows for shadowing syntax in a way disallowed by R5RS/sec.5.3, Chicken Trac, 2010/04/13
- [Chicken-janitors] Re: #209: Chicken allows for shadowing syntax in a way disallowed by R5RS/sec.5.3, Chicken Trac, 2010/04/15
- [Chicken-janitors] Re: #209: Chicken allows for shadowing syntax in a way disallowed by R5RS/sec.5.3, Chicken Trac, 2010/04/15
- [Chicken-janitors] Re: #209: Chicken allows for shadowing syntax in a way disallowed by R5RS/sec.5.3, Chicken Trac, 2010/04/27
- [Chicken-janitors] Re: #209: Chicken allows for shadowing syntax in a way disallowed by R5RS/sec.5.3, Chicken Trac, 2010/04/27