A brief update on R7RS Large in 2025 Daphne Preston-Kendal 01 Jan 2025 11:24 UTC

Happy new year to all Schemers!

Here is a brief update on the status of R7RS Large as we start a new year, with some current issues you might like to comment on, and a revised timetable.

There will be a ballot on issues affecting the next two fascicles (and some Batteries questions) very soon, I hope: I am just waiting on SRFI 254 to be finalized before it goes out. This means it is still not quite yet too late to submit proposals.
This page summarizes the content of the upcoming ballot: <https://codeberg.org/scheme/r7rs/wiki/Stygian-Blue-and-Reddish-Green-ballot-proposals>
Although please open an issue on the issue tracker first to try and see if there is consensus before we go to a vote.

Apropos the issue tracker, I have been cleaning up the remaining issues that were not resolved before the Macrological Fascicle was published, and trying to gather consensus on one or two issues to try to avoid going to ballot on them:

1. In the case of the list library, the ‘linear update’ procedures should be removed entirely, without prejudice to pair mutation or linear update on other types in general:
<https://codeberg.org/scheme/r7rs/issues/225>

2. Fix the ‘fold’ argument order issue by following the R6RS and Haskell style:
<https://codeberg.org/scheme/r7rs/issues/60#issuecomment-2533720>

Also, the following issues affect the next fascicle and will go to a ballot unless there is clear consensus in favour:

3. Should we provide an explicit ‘letrec[*]-values’? (In R7RS small, it is already provided implicitly by define-values in a body)
<https://codeberg.org/scheme/r7rs/issues/203>

4. Should we include ‘begin0’ (equivalent to CL prog1)?
<https://codeberg.org/scheme/r7rs/issues/210>

5. Should we include ‘independently’ from SRFI 236?
<https://codeberg.org/scheme/r7rs/issues/211>

Lastly, to the timetable. The goal of Foundations finished in time for Scheme’s 50th anniversary in December this year is no longer practical: I knew it was ambitious when I set it, and unsurprisingly it has been scuppered because of various administrative delays in 2024. I’m now aiming for the Foundations and Batteries to be done sometime in 2028. Parallel work on the Batteries and Foundations is working out well; looking at how many SRFIs need to be written for each of them, 2028 feels reasonable.
(Everyone is always welcome to contribute SRFIs: a list of the ones we need is kept up to date here: <https://codeberg.org/scheme/r7rs/wiki/Needed-SRFIs>)

There will hopefully be at least two ballots this year, and I hope to at least get to start working on the Erroneous Fascicle by the end of 2025. The Valued Fascicle will be by far the largest in terms of number of entries, though; we’ll see.

All the best for the new year,

Daphne

P.S. I am presenting on the past, present, and future of R7RS Large at Trends in Functional Programming in Oxford later this month. Registration is still open till 6 January. Mike Sperber, lead editor of R6RS, is also presenting a keynote, and several other papers cover interesting Scheme-related topics as well. Come along if you can! <https://trendsfp.github.io/>