On Mon, Jun 27, 2016 at 11:03 PM, Marc Nieper-Wißkirchen
<
marc....@gmail.com> wrote:
>
> If this change is added to the language, another change will have to be made
> in section 4.2.1: One would have to add that in each datum of a case-clause,
> each renamed identifier retains its original spelling as if it was quoted.
> Otherwise, the sample implementation of the case syntax given in the
> appendix would be wrong.
The sample implementation given in the appendix uses `quote',
so it will have the same semantics as quote whether you want
it to or not, and nothing need be said about `case'.
If I understand, the errata is to clarify only one thing, that:
(eq? 'foo (string->symbol "foo"))
is always true. In other words, regardless of whatever renaming
may be going on, a quoted value (even quoted indirectly through
macro expansion) will always evaluate to the original symbol
written in the source. _How_ it guarantees this is not relevant.
But equivalents to this example are already in the spec, and if
this were not already true the language would be quite broken.
Do we really need to say anything?
--
Alex