[Top][All Lists]
[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
- Re: [Guile-commits] GNU Guile branch, syncase-in-boot-9, updated. e3c5df539640a36eb1493f581087d54a4714f337,
Neil Jerram <=