This site is a static rendering of the Trac instance that was used by R7RS-WG1 for its work on R7RS-small (PDF), which was ratified in 2013. For more information, see Home.

Source for wiki LetrecStar version 1

author

cowan

comment


    

ipnr

127.10.177.1

name

LetrecStar

readonly

0

text

This page reports the results of the expressions `(letrec ((x 0) (y x)) y)` and `(letrec* ((x 0) (y x)) y)`.  The former is not defined (in R6RS, it must return an error) and the latter should always return 0, provided `letrec*` is supported (it is required by R6RS and R7RS, but not by earlier reports).  It also looks at
{{{
(let ((z 0))
  (define x 0)
  (define y x)
y)
}}}

which in R5RS and earlier is defined to be the same as the `letrec` version, and in R6RS and R7RS is defined to be the same as the `letrec*` version.

Note: UMB crashes with all these constructions.


== letrec ==

Reports an error: MIT, Scheme48/scsh, Chez, Vicare, Ypsilon, Mosh, !IronScheme, !SigScheme, !TinyScheme

Returns 0: Racket, Gauche, Guile, Kawa, SISC (with a warning), SCM, Larceny, NexJ, JScheme, KSi, RScheme, XLisp, Rep, Schemik, Elk, Llava, SXM, Sizzle, !FemtoLisp, Dfsch, Inlab, Foment, Owl Lisp, Chibi

Returns a different value: Gambit, Chicken, Bigloo, STklos, Scheme 9, S7, BDC

Does not support `letrec`: Shoe

== letrec* ==

Returns 0: Chicken, Bigloo, Scheme48/scsh, Guile, Chez, Larceny, Ypsilon, Mosh, !IronScheme, NexJ, KSi, Scheme 9, S7, Foment, Chibi

Does not support `letrec*`: Racket, Gauche, MIT, Gambit, Kawa, SISC, SCM, JScheme, STklos, !SigScheme, Shoe, !TinyScheme, RScheme, BDC, XLisp, Rep, Schemik, Elk, Llava, SXM, Sizzle, !FemtoLisp, Dfsch, Inlab, Owl Lisp

== internal definition ==

Reports an error: Scheme48/scsh, !SigScheme

Returns 0: Racket, Gauche, MIT, Chicken, Bigloo, Guile, Kawa, SISC (with a warning), SCM, Chez, Vicare, Larceny, Ypsilon, Mosh, !IronScheme, NexJ, JScheme, STklos, KSi, Shoe, !TinyScheme, RScheme, S7, BDC, XLisp, Rep, Schemik, Elk, Llava, Sizzle, !FemtoLisp, Dfsch, Inlab, Foment, Owl Lisp, Chibi

Returns a different value: Gambit, Scheme 9, SXM

time

2013-11-30 11:50:18

version

1