Procedural Fascicle draft

3 views
Skip to first unread message

Peter McGoron

unread,
Apr 23, 2026, 4:14:25 PM (3 days ago) Apr 23
to scheme-reports-wg2
I have tried to address all the TODOs in the Procedural Fascicle draft.
I also added the editorial conventions and acknowledgements. I think it
is ready for public release. You can see the front page here:

https://florida.moe/r7rs/docbook/procedural-fascicle/

The changes to `cond` and `case` were points of contention. I believe we
should publish them, with a note that they are subject to change. We can
ballot them and revert them to -Small semantics if they prove unpopular.

Please read and give comments. Hopefully we can publish it early next
month or sooner.

-- Peter McGoron

Wolfgang Corcoran-Mathe

unread,
Apr 23, 2026, 8:08:14 PM (3 days ago) Apr 23
to 'Peter McGoron' via scheme-reports-wg2
Thanks, Peter, this looks great. I don't think it's necessary to
put the two of us on the title page as typesetters (as opposed to
vanilla WG2 members), since it's mentioned later in the document.
But that's a very minor detail.

It would be great if macros with complex structure (like 'do' and
'guard') could be pretty-printed in their synopses (as in the Reports).
Right now the 'do' synopsis is rendered as:

(do ((⟨variable1⟩ ⟨init1⟩) …) (⟨test⟩ ⟨expression⟩ …) (⟨command⟩ …)),

when

(do ((⟨variable1⟩ ⟨init1⟩) …)
(⟨test⟩ ⟨expression⟩ …)
(⟨command⟩ …)),

would be preferable.

I know this would probably be an enormous headache, entailing the
addition of some kind of verbatim layout inside of an expression
syntax element. Yuck. But I'll try to think of a way to do it that
doesn't result in completely barbarous markup.

On 2026-04-23 16:13 -0400, 'Peter McGoron' via scheme-reports-wg2 wrote:
> The changes to `cond` and `case` were points of contention. I
> believe we should publish them, with a note that they are subject to
> change. We can ballot them and revert them to -Small semantics if
> they prove unpopular.

I agree.

--
Wolfgang Corcoran-Mathe <w...@sigwinch.xyz>

Peter McGoron

unread,
Apr 24, 2026, 7:28:47 AM (2 days ago) Apr 24
to scheme-re...@googlegroups.com
> I know this would probably be an enormous headache, entailing the
addition of some kind of verbatim layout inside of an expression
syntax element. Yuck. But I'll try to think of a way to do it that
doesn't result in completely barbarous markup.

I guess the proper way to do it would be to insert code into the Docbook
-> HTML converter that adds the appropriate amount of spaces.

______________________________________________________

To everyone:

I've made an update to the draft that points out incompatible behavior
(forbidding the invocation of the continuation of letrec binding, when
and unless).

I have also added example implementations of everything that had example
implementations in the R7RS-Small.

The `letrec-values` and `letrec*-values` definitions don't have sample
implementations, although they could be implemented in terms of other
identifiers. If anyone is up for implementing those I can put those in
the draft.

-- Peter McGoron

Zhu Zihao

unread,
Apr 24, 2026, 4:50:39 PM (2 days ago) Apr 24
to scheme-re...@googlegroups.com
I previously (in 2025-10-28 meeting) pointed out a minor error in
Procedural Fascicle, maybe now is a good time to fix it.

[21:58:12] <adamhume> dpk: I want to remind a possibly typo here https://codeberg.org/scheme/r7rs/src/commit/edc445915443eed1cef16d29be88cc05a8411328/fascicles/procedural-fascicle.txt#L1856
[21:58:24] <adamhume> should "undefined" be "unspecified"?
[21:58:34] <dpk> ooh, good catch
[21:58:38] <dpk> yes, i’ll fix that too

See the full log in <https://codeberg.org/scheme/r7rs/wiki/Minutes+2025-10-28.->
--
Retrieve my PGP public key:
执行下列命令以获取我的 PGP 公有密钥:

gpg --recv-keys B3EBC086AB0EBC0F45E0B4D433DB374BCEE4D9DC

Zihao / 閱卜錄
signature.asc

Peter McGoron

unread,
Apr 24, 2026, 5:03:58 PM (2 days ago) Apr 24
to scheme-re...@googlegroups.com
Thank you for the report.

I have fixed it and added some more text to document the change from the
R7RS-Small.

https://florida.moe/r7rs/docbook/procedural-fascicle/unofficial-draft/#when-and-unless

-- Peter McGoron

Wolfgang Corcoran-Mathe

unread,
Apr 24, 2026, 5:42:59 PM (2 days ago) Apr 24
to 'Peter McGoron' via scheme-reports-wg2
On 2026-04-23 16:13 -0400, 'Peter McGoron' via scheme-reports-wg2 wrote:
> I have tried to address all the TODOs in the Procedural Fascicle
> draft. I also added the editorial conventions and acknowledgements.
> I think it is ready for public release.

We have to resolve this issue, I think, before officially publishing
the PF:

https://codeberg.org/scheme/r7rs/issues/330

By adding SRFI 219 syntax for lambda and define, we've implicitly
extended case-lambda and other forms that use lambda formals in ways
that (probably) make little sense.

--
Wolfgang Corcoran-Mathe <w...@sigwinch.xyz>

Wolfgang Corcoran-Mathe

unread,
Apr 24, 2026, 6:03:21 PM (2 days ago) Apr 24
to scheme-re...@googlegroups.com
On 2026-04-24 17:42 -0400, Wolfgang Corcoran-Mathe wrote:
> By adding SRFI 219 syntax for lambda and define, we've implicitly
> extended case-lambda and other forms that use lambda formals in ways
> that (probably) make little sense.

Sorry, I was wrong. As Peter pointed out on Codeberg, only define's
formals have been extended. While the multiple <formals> forms
bouncing around the Fascicle are confusing, there is no menace to
case-lambda, et al.

--
Wolfgang Corcoran-Mathe <w...@sigwinch.xyz>
Reply all
Reply to author
Forward
0 new messages