guile-devel
[Top][All Lists]
Advanced

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

Re: [Guile-commits] GNU Guile branch, syncase-in-boot-9, updated. e3c5df


From: Neil Jerram
Subject: Re: [Guile-commits] GNU Guile branch, syncase-in-boot-9, updated. e3c5df539640a36eb1493f581087d54a4714f337
Date: Tue, 02 Jun 2009 23:35:22 +0100
User-agent: Gnus/5.11 (Gnus v5.11) Emacs/22.2 (gnu/linux)

Andy Wingo <address@hidden> writes:

>>>     * module/ice-9/boot-9.scm: Remove #' read-hash extension, which actually
>>>       didn't do anything at all. It's been there since 1997, but no Guile
>>>       code I've ever seen uses it, and it conflicts with #'x => (syntax x)
>>>       from modern Scheme.
>>
>> I find this point questionable.  Do we really need to break this
>> functionality?  It would be nicer if we could both keep
>> `read-hash-extend' and the functionality you want.  What do you think?
>
> `read-hash-extend' is still there. This just removed the #'
> read-hash-extension, which was the identity extension: #'foo == foo.
>
> `read-hash-extend' overrides any core hash forms, so this extension
> prevented #'foo == (syntax foo). It would be easy for an affected reader
> to add this particular extension back, though.

I don't think we need to worry much about preserving the #' read-hash
extension, however:

(1) Doesn't #'x => (syntax x) need to apply only in the lexical RHS of
a syntax-case syntax transformer?  Perhaps then we could implement
this meaning of #'x only in this limited scope, and retain the older
meaning in other scopes?

(2) We should of course mention the removal of the old #' in NEWS, and
as part of that entry it would be good to say in detail how "It would
be easy for an affected reader to add this particular extension
back".  (Which I assume just means providing the necessary
(read-hash-extend ...) incantation.)

Regards,
        Neil




reply via email to

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