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 ArgumentOrder version 3
author
cowan
comment
ipnr
127.10.177.1
name
ArgumentOrder
readonly
0
text
This is a test of the order in which Scheme REPLs evaluate constant arguments. It doesn't necessarily apply when arguments have different levels of complexity, nor does it apply to compiled code. The test is `((lambda x x) (display "l") (display "t") (display "r"))`. In some cases, side-effecting procedures other than `display` were used.
Displays `ltr`: Racket, Gauche, Gambit, Chicken, Bigloo, Scheme48/scsh, Kawa, SCM, Vicare, Ypsilon, Mosh, !IronScheme, NexJ, STklos, KSi, !SigScheme, Scheme 9, RScheme, S7, Rep, Schemik, Elk, UMB, Llava, Sizzle, !FemtoLisp, Dfsch, Inlab, Foment
Displays `rtl`: MIT, BDC, XLisp, SXM, Chibi
Unpredictable order: Chez
Undeterminable order (no side effects): Owl Lisp
The following C code was also tested:
{{{
# include <stdio.h>
int yotz(int a, int b, int c) {
return a + b + c;
}
int main() {
yotz(printf("l"), printf("t"), printf("r"));
}
}}}
Displays `ltr`: Clang
Displays `rtl`: GCC
time
2014-01-27 01:19:39
version
3