[Larceny-users] Ticket 638

Lynn Winebarger owinebar at gmail.com
Tue Apr 21 16:18:59 EDT 2009


On Tue, Apr 21, 2009 at 1:23 PM, Abdulaziz Ghuloum <aghuloum at gmail.com> wrote:
>
> On Apr 21, 2009, at 8:01 PM, William D Clinger wrote:
>
>> It appears to me that Andre van Tonder and Aziz Ghuloum
>> agree implementations are allowed to raise an exception
>> for that test
>
> I actually don't know.  It's not clear to me from the
> description of free-identifier=? in the report that it
> is allowed to raise any exception given that its two
> arguments are indeed identifiers.  Can you point it out?

What I find confusing is that a syntax violation is being generated at
phase 0 of a library.  I had just assumed that the syntax violation
occurred when the #'cons expression was expanded.

While I think this is an obvious expectation (that syntax violations
occur at expand time), I think R6RS might actually support this
expectation in section 5.5:
        If a top-level or library form in a program is not
syntactically correct,
        then the implementation must raise an exception with condition type
        &syntax, and execution of that top-level program or library must not be
        allowed to begin.

So, I agree with Andre's assertion that an implementation free to
raise a syntax exception for this identifier, but I don't think it's
free to cause the syntax exception as an invalid argument to
free-identifier=? at run-time.  Maybe there is some other kind of
exception that could be raised at run-time for an invalid argument,
just not one with an &syntax condition type.

Lynn



More information about the Larceny-users mailing list