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

Re: a (revised) draft of R5RS



> This is the reason that Scheme standardization is dead.
> 
> On the one hand, there are a group of people who are trying to make
> Scheme a useful programming language.  These people make expedient
> choices that use the best currently available technology [...]
> 
> On the other hand, there are a group of people who are trying to make
> Scheme the cleanest and best programming language.  [...]

I think this is largely right.  In the present context, it's
important to note that the first group should not be thought of
as concerned with efficiency rather than elegance.  (I think
Kent fits naturally into that group, BTW.)  But they are willing
to make pragmatic choices in order to get useful functionality
when it's not clear what approach is best.

And it seldom is clear what choice is best.

Here's where I disagree with Chris: I think language development
always tends to reach a state where further progress is very 
difficult.  I've seen roughly the same pattern with aspects of
Common Lisp, Dylan, EuLisp, and Scheme.

For a while, it's fairly easy to make decisions even though there are
good arguments for (and against) several different approaches.  The
"good arguments" don't block decisions.

Later, decisions with the same sorts of "arguments on both sides"
become very difficult to make.  The arguments then have a role in blocking
decisions, but I do not think they are the real reasons, or at least
not the only ones, because arguments of similar quality, earlier, did
not have the same effect.

My feeling is that there is almost inevitably a loss of momentum
so that it becomes difficult to agree about language changes.
I don't know what all the reasons are, but I suspect a major
factor is that the language reaches a point where it is a reasonably
good language.  Decisions were necessary earlier, in order to get
to that point, and the enthusiasm that's required to get a language
design that far tends to carry it somewhat further.  Then things
become difficult.

In any case, I think the only answer for those who are not satisfied
with Scheme more or less as it is now is for them to develop a new
language.

-- jeff