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

Re: [Scheme-reports] Ratification vote for R7RS-small

Statement of Interest:

I have been using Scheme since 1985 or thereabouts, was the coordinator
for the the IEEE1178 committee that produced the last IEEE standard of
Scheme, use scheme primarily for natural-language work, and have 
participated in the RnRS process since R5RS.

Vote: Did the WG1 committee reasonably fulfill its mandate?



And more's the pity that it did.  The mandate itself was flawed.  I
recall saying so when the process started, but decided not to hammer
on it to the detriment of the work being done.  That has been a good
decision, because in fairness, I think the work the committee has done
has been the best that could be done given the mandate under which it
worked, and I deeply respect those who could put aside their feelings
about the mandate itself and do the best work it allowed.  I myself have
not been as able to do so, so I haven't participated much in the R7

Here are a few of the reasons why I believe that the mandate under which 
WG1 worked was an inappropriate mandate for a scheme standardization effort.

Item: Oleg Kiselyov has published some very interesting papers about
call/cc that outline reasons why it is intractable as an abstraction and
call its utility into question.  WG1's charter more-or-less forbade
responding to that in any way.

Item: WG1 was required to produce a standard such that "any working
WG1 program is also a working WG2 program" and that forbade developing
a simpler semantic model of anything that WG2 is making complex.  WG1
was not to simplify anything that would remain complex in WG2's
dialect, nor to unrestrict anything that would remain restricted in
WG2's dialect.

In other words, WG1 was EXPRESSLY FORBIDDEN to "remove restrictions
that make additional features seem necessary" which is IMO a clear
statement that though it has much in common with earlier dialects of
Scheme, the language we're working on is not, in fact, Scheme as we have
up to now understood it.  This relationship with the previous scheme 
philosophy repeats one of the design flaws that caused so much 
controversy with R6, although the effect on the standard produced has 
not in this case been nearly as pronounced.

Item: The above constraint on WG1 was in place before the WG2 standard
became known. Indeed, that standard still has not become known and we 
are now taking ratification votes finalizing WG1's work.  If one design 
must be dependent on the other, then it should be the second produced, 
not the first.

Item:  Many of our text-handling routines are visibly redundant or
inelegant in the presence of Unicode.  They exist for consistency
with an earlier design and are not fully appropriate to a design
taking into account the current reality. As such they could and should
have been one of the first things we examined when asked to produce a
simpler language. These issues could not be addressed under the charter
of WG1.

Scheme-reports mailing list