[R6RS] data relevant to ticket #117

dyb at cs.indiana.edu dyb at cs.indiana.edu
Sun Dec 10 13:51:38 EST 2006

Thanks, Will.  I just did a brief search myself, quitting of boredom after
the first 60,000 lines of code.

Of 161 occurrences of (let () ---) and 28 of (letrec ---):

  - 1 could be eliminated by adopting the proposal made by ticket #117.
    (This is in the else clause of a cond expresison, where a local
    helper is defined and used three times.)

  - 28 could be eliminated by allowing bodies on the RHS of define
    (and 1 more for define-syntax).

My results are thus consistent with Will's.

Also, FYI:

  - 4 appear in the consequent or alternative subexpressions of if
    expressions, which I might be tempated to rewrite as cond expressions
    if the proposal made by ticket #117 were adopted.

  - 8 could be eliminated by allowing bodies in special-purpose case-like
    internal derived forms (this could be an argument for or against the

  - 92 occurrences could have been module forms had we had modules when
    the code was written

  - 11 are used in transformer templates to give body semantics to some
    part of the syntactic form being defined


More information about the R6RS mailing list