Hacker News new | ask | show | jobs
by tptacek 1036 days ago
It'd be neat if someone familiar with Scheme standardization laid out some of the big disagreements in R7RS-large, or else most of this thread will just be a Scheme vs. Every Other Language discussion.
2 comments

I've been trying to get up to speed myself. It seems like the best way is simply reading the mailing list and checking out the codeberg issues. This issue [1] was given as an example of a non-technical problem that's easy to get distracted by when most of the core technical work should be straightforward. It's referenced in this candidacy statement [2] for John's chair position which is a good read to understand what's happening. It's essentially the classic language debate of breaking compatibility with past version versus evolving the language, and seems pretty complicated. I'm sure there are other problems. I'm still reading.

[1]: https://codeberg.org/scheme/r7rs/issues/126 [2]: https://groups.google.com/g/scheme-reports-wg2/c/TUbmlPY9lR0

The second link provided here has a little overview of Daphne's thoughts on why things are dragging on:

> The establishment of the central issue tracker is, I reckon, more to blame for the current disputes. The old model of periodic ballots provided the community with focus; the issue tracker has the problem that, since all currently outstanding problems are listed in one place, any such problem can become a focus of attention at any time, and then arguments about the details of that problem erupt. John has observed in #scheme that the more into detail we get, the more we seem to argue, which seems accurate. It has also, in practice, become a place where issues related to the Foundations only are discussed, and work on the Batteries has mostly stalled. Mea culpa!

r6rs was hugely controversial for many reasons. r7rs-small went back to the r5rs roots, whereas many of us (yes, me included) thought building on r6rs would be the better choice.

Much of the process that was started in r6rs led to racket. Kent Dybvig was the head of the standards body and the racket folks were also active in the mailing lists. I think a big part of the disagreement was about correctness. r6rs guarantees some things about a running program that is difficult to do for many small hobby projects. There was also a discussion started about things like immutable data (pairs and strings, mostly) which got people all hot and bothered.

The problem with r7rs-large is that it will have to solve many of the problems solved by r6rs (low level macro system, how to handle unicode etc...) which means redoing the r6rs work.