• The definition of `guard` in R7RS-small

    From John Cowan@21:1/5 to All on Thu Jun 18 13:44:40 2020
    As originally written, `guard` invokes `raise-continuable` when none of the guard clauses is satisfied (which implies that there is no `else` clause). That is the Right Thing, because it means that whether or not the original raising procedure was `
    raise` or `raise-continuable`, the `guard`-expression will return control to it.

    Unfortunately, erratum #17 changed the prose and the sample definition to use `raise` instead. The change to the sample definition was correctly undone, but the change to the prose was not. I have just corrected https://bitbucket.org/cowan/r7rs/src/
    errata/spec/r7rs.pdf to make the prose say "raise-continuable'

    The list of R7RS errata already said that #17 had been undone, so no change needed there. However, any implementers that copied the definition of `guard` should check to make sure their definition of `guard` invokes raise-continuably rather than raise.
    Chibi is definitely wrong, and I'm filing a ticket for it.

    John Cowan http://vrici.lojban.org/~cowan cowan@ccil.org Micropayment advocates mistakenly believe that efficient allocation of resources is the purpose of markets. Efficiency is a byproduct of market systems, not their goal. The reasons markets work are not because users
    have embraced efficiency but because markets are the best place to allow
    users to maximize their preferences, and very often their preferences are
    not for conservation of cheap resources. --Clay Shirky

    --- SoupGate-Win32 v1.05
    * Origin: fsxNet Usenet Gateway (21:1/5)