Hi Wolfgang, thank you for your review! And please excuse my (very) late reply.
Am Mi., 10. Jan. 2024 um 21:40 Uhr schrieb Wolfgang Corcoran-Mathe < [email protected]>: > Hi Marc and the SRFI 248 list, > > Thanks for your work on this SRFI! A few comments: > > The abstract is opaque. Many readers will probably give up after > trying to parse the first sentence. Please make it clearer. > The SRFI's purpose is not to explain what delimited continuations are, its abstract is even less so. I assume that people interested in this SRFI know what delimited continuations are (e.g. by reading SRFI 226). This SRFI is more directed to implementers than to users because this SRFI cannot be installed as a portable library. A user of an implementation supporting this SRFI will then, hopefully, use the implementation's programmer's manual. That said, if you have a suggestion for a better wording that is no less exact, please let me know! The Rationale claims that "it has become increasingly clear that > [undelimited continuations] do not provide the right abstraction". > Citation needed! Please link to someone making this argument, or > make it yourself. > I add a sentence pointing to the resources within SRFI 226. > At the end of the Rationale you write "If it were not for call/cc, > the system could dispense with dynamic-wind." This is cryptic, and > is not elucidated anywhere in the SRFI. In any case, what's it > doing in the Rationale? > As long as call/cc is still present, dynamic-wind is needed (by the rationale that made it into R5RS). If all non-local control flow were done with this SRFI, dynamic-wind wouldn't be needed, simplifying the system. (In other words, deprecating call/cc one day may be a good idea.) Please explain what the examples do and how they work. > make-coroutine-generator is at least described in SRFI 158, but > for-each->fold is novel. It's not obvious what it means > to "transform a procedure with for-each-like semantics describing > an abstract list into a procedure with fold-like semantics > describing the same abstract list." > If you have better wording, please let me know. What does "the dynamic extent (as determined by dynamic-wind)" > mean? Is the intended meaning "the dynamic extent (as defined in > [the RnRS section describing dynamic-wind])"? > Good point. I change this into "the dynamic extent as defined by R6RS". Please simplify this: "The implementation must check the > restrictions on 'handler' to the extent performed by applying it > as described when it is called as a result of a call to 'raise' or > 'raise-continuable'." > This is the standard wording in R6RS. > Please indent 'guard'. Use literal <br />s and no-break spaces > if there's really no other way. > I managed to improve it somehow. Cetero censeo, I hope for a better SRFI source format than HTML at some point in the future. :) guard: "It then binds the raised exception ..." For "exception" > read "object", I think. > Indeed! Thanks. Marc
