[r6rs-discuss] an essay on language design
Michael Sperber wrote:
> You point out my lack of insight into the performance implications of
> the design decision we made.
Lack of insight would have been tolerable. Pretended
insight, which is the only possible source of the two
paragraphs of tendentious nonsense that were added in
the 5.97 draft, is intolerable.
> I will point
> out that the aspect of the syntactic records layer you're criticizing
> has been on the table publically since late 2005,
Untrue. The two paragraphs of tendentious nonsense were
new in the 5.97 draft.
My essay placed those two paragraphs in the context of
language design because those two paragraphs appear to
have been intended to excuse poor language design and/or
to scare programmers away from superior designs that
would have been offered via the SRFI process.
> and no alternative
> designs (on top of the same procedural layer) were available before the
> candidate draft.
After the editors had announced their intention not to
consider these issues further, proposing a superior
design to this set of editors would have been pointless.
As you well know, I had resigned myself to using the SRFI
process. If and when an R6RS is ratified, I will propose
a better syntactic layer as a SRFI.
If the editors had changed their minds and expressed their
willingness to consider improvements, then it would have
made sense for us to have discussed these things in advance
of a candidate draft. Until the current draft is rejected,
however, I see no point to having such a discussion.
> I'm also on the record for saying:
>
> - No matter what the syntactic layer, somebody will be sufficiently
> unhappy with it to write up their own.
You have also known for some time that I would be among
those people. That was a stable compromise that all
parties could have accepted.
The editors terminated that compromise by adding the two
paragraphs of tendentious nonsense. It now appears that
the primary technical basis for those two paragraphs
consists of two load instructions that fetch the free
variables of a closure. Furthermore one of those load
instructions is easily eliminated for almost all record
accesses even with the procedural layer, and the other
is just as hard to remove with the syntactic as with the
procedural.
I can accept poor language design. I cannot accept false
and misleading attempts to excuse poor language design
or to discourage programmers from using closures.
If the editors wish to advocate nonsense, they should
do so in their individual publications, not in the R6RS.
Will
Received on Tue Jul 24 2007 - 15:28:07 UTC
This archive was generated by hypermail 2.3.0
: Wed Oct 23 2024 - 09:15:01 UTC