Go to:
Gentoo Home
Documentation
Forums
Lists
Bugs
Planet
Store
Wiki
Get Gentoo!
Gentoo's Bugzilla – Attachment 532764 Details for
Bug 656352
dev-scheme/scm-5.5.6-r3 fails test: make: *** [Makefile:<snip>: check] Error 1
Home
|
New
–
[Ex]
|
Browse
|
Search
|
Privacy Policy
|
[?]
|
Reports
|
Requests
|
Help
|
New Account
|
Log In
[x]
|
Forgot Password
Login:
[x]
dev-scheme:scm-5.5.6-r3:20180523-095605.log
dev-scheme:scm-5.5.6-r3:20180523-095605.log (text/plain), 100.28 KB, created by
Toralf Förster
on 2018-05-23 16:32:08 UTC
(
hide
)
Description:
dev-scheme:scm-5.5.6-r3:20180523-095605.log
Filename:
MIME Type:
Creator:
Toralf Förster
Created:
2018-05-23 16:32:08 UTC
Size:
100.28 KB
patch
obsolete
> * Package: dev-scheme/scm-5.5.6-r3 > * Repository: gentoo > * Maintainer: scheme@gentoo.org > * USE: abi_x86_64 amd64 elibc_glibc inexact kernel_linux ncurses readline userland_GNU > * FEATURES: network-sandbox preserve-libs sandbox test userpriv usersandbox >>>> Unpacking source... >>>> Unpacking scm-5e6.zip to /var/tmp/portage/dev-scheme/scm-5.5.6-r3/work >>>> Source unpacked in /var/tmp/portage/dev-scheme/scm-5.5.6-r3/work >>>> Preparing source in /var/tmp/portage/dev-scheme/scm-5.5.6-r3/work/scm ... > * Applying scm-5.5.6-multiplefixes.patch ... > [ ok ] >>>> Source prepared. >>>> Configuring source in /var/tmp/portage/dev-scheme/scm-5.5.6-r3/work/scm ... >>>> Source configured. >>>> Compiling source in /var/tmp/portage/dev-scheme/scm-5.5.6-r3/work/scm ... > * using SLIB /usr/share/slib/ > * Making scmlit >make -j1 -j1 scmlit clean >echo "CPROTO=`type cproto | sed 's%.* %%'`" > srcdir.mk >echo "srcdir=`pwd`/" >> srcdir.mk >echo "#ifndef IMPLINIT" > newflags.h >echo "#define IMPLINIT \"/var/tmp/portage/dev-scheme/scm-5.5.6-r3/work/scm/Init5e6.scm\"" >> newflags.h >echo "#endif" >> newflags.h >echo "#define CHEAP_CONTINUATIONS" >> newflags.h >echo "#define CAUTIOUS" >> newflags.h >if (cmp -s newflags.h scmflags.h) then rm newflags.h; \ > else mv newflags.h scmflags.h; fi >cc -c -O2 -pipe -march=native scm.c -o scm.o >scm.c: In function âprocess_signalsâ: >scm.c:176:17: warning: cast to pointer from integer of different size [-Wint-to-pointer-cast] > wta(UNDEFINED, (char *)i, ""); > ^ >scm.c: In function âerr_signalâ: >scm.c:259:41: warning: cast to pointer from integer of different size [-Wint-to-pointer-cast] > wta(MAKINUM(sig), (i < 0 ? s_unksig : (char *)(i + SIGNAL_BASE)), ""); > ^ >scm.c: In function âscmable_signalâ: >scm.c:290:22: warning: cast to pointer from integer of different size [-Wint-to-pointer-cast] > wta(UNDEFINED, (char *)i, ""); > ^ >cc -c -O2 -pipe -march=native time.c -o time.o >cc -c -O2 -pipe -march=native repl.c -o repl.o >repl.c: In function âhandle_itâ: >repl.c:1269:20: warning: cast to pointer from integer of different size [-Wint-to-pointer-cast] > wta(UNDEFINED, (char *)i, ""); /* sends it to def_err_response */ > ^ >repl.c: In function âdef_err_responseâ: >repl.c:2076:47: warning: cast from pointer to integer of different size [-Wpointer-to-int-cast] > lputc((long)err_pos <= ARGn ? ' ' : '1' + (int)err_pos - ARG1, cur_errp); > ^ >repl.c:2079:23: warning: cast from pointer to integer of different size [-Wpointer-to-int-cast] > else lputs(errmsgs[((int)err_pos)-WNA].msg, cur_errp); > ^ >repl.c: In function âeverrâ: >repl.c:2132:11: warning: assignment discards âconstâ qualifier from pointer target type [-Wdiscarded-qualifiers] > err_pos = pos; > ^ >repl.c:2133:14: warning: assignment discards âconstâ qualifier from pointer target type [-Wdiscarded-qualifiers] > err_s_subr = s_subr; > ^ >In file included from repl.c:21:0: >repl.c:2138:24: warning: cast from pointer to integer of different size [-Wpointer-to-int-cast] > COOKIE(1) : COOKIE((int)pos)); > ^ >scm.h:260:21: note: in definition of macro âCOOKIEâ > # define COOKIE(n) (n) > ^ >cc -c -O2 -pipe -march=native scl.c -o scl.o >cc -c -O2 -pipe -march=native sys.c -o sys.o >In file included from scm.h:55:0, > from sys.c:21: >sys.c: In function âltmpnamâ: >sys.c:266:11: warning: ignoring return value of âtmpnamâ, declared with attribute warn_unused_result [-Wunused-result] > SYSCALL(tmpnam(name);); > ^~~~~~~~~~~~ >scmfig.h:794:37: note: in definition of macro âSYSCALLâ > # define SYSCALL(line) do{errno = 0;line}while(SCM_INTERRUPTED(errno)) > ^~~~ >cc -c -O2 -pipe -march=native eval.c -o eval.o >In file included from eval.c:21:0: >eval.c: In function âmapâ: >scm.h:1105:85: warning: cast to pointer from integer of different size [-Wint-to-pointer-cast] > _cond, _arg, _pos, _subr) if (SCM_EXPECT_FALSE(!(_cond))) wta(_arg, (char *)(_pos), _subr); > ^ >eval.c:3106:7: note: in expansion of macro âASRTERâ > ASRTER(CONSP(ve[i]), ve[i], 0==i ? ARG2 : ARGn, s_map); > ^~~~~~ >eval.c: In function âfor_eachâ: >scm.h:1105:85: warning: cast to pointer from integer of different size [-Wint-to-pointer-cast] > _cond, _arg, _pos, _subr) if (SCM_EXPECT_FALSE(!(_cond))) wta(_arg, (char *)(_pos), _subr); > ^ >eval.c:3153:7: note: in expansion of macro âASRTERâ > ASRTER(CONSP(ve[i]), ve[i], 0==i ? ARG2 : ARGn, s_for_each); > ^~~~~~ >cc -c -O2 -pipe -march=native subr.c -o subr.o >In file included from subr.c:22:0: >subr.c: In function âlist_refâ: >scm.h:1105:85: warning: cast to pointer from integer of different size [-Wint-to-pointer-cast] > _cond, _arg, _pos, _subr) if (SCM_EXPECT_FALSE(!(_cond))) wta(_arg, (char *)(_pos), _subr); > ^ >subr.c:196:8: note: in expansion of macro âASRTERâ > erout: ASRTER(NIMP(lst) && CONSP(lst), > ^~~~~~ >cc -c -O2 -pipe -march=native unif.c -o unif.o >cc -c -O2 -pipe -march=native rope.c -o rope.o >cc -c -O2 -pipe -march=native continue.c -o continue.o >cc -c -O2 -pipe -march=native findexec.c -o findexec.o >findexec.c: In function âdld_find_executableâ: >findexec.c:163:5: warning: ignoring return value of âgetcwdâ, declared with attribute warn_unused_result [-Wunused-result] > getcwd(tbuf, MAXPATHLEN); > ^~~~~~~~~~~~~~~~~~~~~~~~ >findexec.c:194:7: warning: ignoring return value of âgetcwdâ, declared with attribute warn_unused_result [-Wunused-result] > getcwd(tbuf, MAXPATHLEN); /* was getwd(tbuf); */ > ^~~~~~~~~~~~~~~~~~~~~~~~ >cc -c -O2 -pipe -march=native script.c -o script.o >script.c: In function âfind_impl_fileâ: >script.c:149:18: warning: initialization discards âconstâ qualifier from pointer target type [-Wdiscarded-qualifiers] > char *extptr = exec_path + strlen(exec_path); > ^~~~~~~~~ >script.c:165:10: warning: assignment discards âconstâ qualifier from pointer target type [-Wdiscarded-qualifiers] > extptr = exec_path + strlen(exec_path); > ^ >script.c: In function âscript_process_argvâ: >script.c:362:12: warning: assignment discards âconstâ qualifier from pointer target type [-Wdiscarded-qualifiers] > nargv[0] = argv[0]; > ^ >script.c:377:22: warning: assignment discards âconstâ qualifier from pointer target type [-Wdiscarded-qualifiers] > nargv[nargi++] = argv[argi++]; > ^ >script.c:380:39: warning: assignment discards âconstâ qualifier from pointer target type [-Wdiscarded-qualifiers] > while (argi <= argc) nargv[nargi++] = argv[argi++]; > ^ >cc -c -O2 -pipe -march=native debug.c -o debug.o >cc -c -O2 -pipe -march=native scmmain.c -o scmmain.o >scmmain.c: In function âmainâ: >scmmain.c:109:32: warning: assignment discards âconstâ qualifier from pointer target type [-Wdiscarded-qualifiers] > if (0==argc) {argc = 1; argv = generic_name;} /* for macintosh */ > ^ >scmmain.c:119:16: warning: assignment discards âconstâ qualifier from pointer target type [-Wdiscarded-qualifiers] > script_arg = argv[2]; /* Save for scm_find_execpath() call */ > ^ >scmmain.c:120:31: warning: passing argument 1 of âscript_count_argvâ from incompatible pointer type [-Wincompatible-pointer-types] > nargc = script_count_argv(nargv); > ^~~~~ >In file included from scmmain.c:30:0: >scm.h:1074:17: note: expected âconst char **â but argument is of type âchar **â > SCM_EXPORT int script_count_argv P((const char **argv)); > ^~~~~~~~~~~~~~~~~ >scmmain.c:122:15: warning: assignment from incompatible pointer type [-Wincompatible-pointer-types] > else {nargv = argv; nargc = argc;} > ^ >scmmain.c:124:39: warning: passing argument 2 of âscm_find_execpathâ from incompatible pointer type [-Wincompatible-pointer-types] > execpath = scm_find_execpath(nargc, nargv, script_arg); > ^~~~~ >In file included from scmmain.c:30:0: >scm.h:775:18: note: expected âconst char * const*â but argument is of type âchar **â > SCM_EXPORT char *scm_find_execpath P((int argc, const char * const *argv, const char *script_arg)); > ^~~~~~~~~~~~~~~~~ >scmmain.c:131:31: warning: passing argument 2 of âscm_init_from_argvâ from incompatible pointer type [-Wincompatible-pointer-types] > scm_init_from_argv(nargc, nargv, script_arg, iverbose, buf0stdin); > ^~~~~ >In file included from scmmain.c:30:0: >scm.h:768:17: note: expected âconst char * const*â but argument is of type âchar **â > SCM_EXPORT void scm_init_from_argv P((int argc, const char * const *argv, char *script_arg, > ^~~~~~~~~~~~~~~~~~ >cp -p requires.scm require.scm >cc -o scmlit scm.o time.o repl.o scl.o sys.o eval.o subr.o unif.o rope.o continue.o findexec.o script.o debug.o scmmain.o >sys.o: In function `ltmpnam': >sys.c:(.text+0x582): warning: the use of `tmpnam' is dangerous, better use `mkstemp' >make checklit >make[1]: Entering directory '/var/tmp/portage/dev-scheme/scm-5.5.6-r3/work/scm' >./scmlit -fr4rstest.scm -e'(test-sc4)(test-delay)(gc)' \ >-e '(or (null? errs) (quit 1))' >SECTION(2 1) >SECTION(3 4) > #<primitive-procedure boolean?> > #<primitive-procedure char?> > #<primitive-procedure null?> > #<primitive-procedure number?> > #<primitive-procedure pair?> > #<primitive-procedure procedure?> > #<primitive-procedure string?> > #<primitive-procedure symbol?> > #<primitive-procedure vector?> >(#t #f #f #f #f #f #f #f #f)#t >(#t #f #f #f #f #f #f #f #f)#f >(#f #t #f #f #f #f #f #f #f)#\a >(#f #f #t #f #f #f #f #f #f)() >(#f #f #f #t #f #f #f #f #f)9739 >(#f #f #f #f #t #f #f #f #f)(test) >(#f #f #f #f #f #t #f #f #f)#<CLOSURE record-error "r4rstest.scm": (e) (set! errs (cons (list cur-section e) errs))> >(#f #f #f #f #f #f #t #f #f)"test" >(#f #f #f #f #f #f #t #f #f)"" >(#f #f #f #f #f #f #f #t #f)test >(#f #f #f #f #f #f #f #f #t)#() >(#f #f #f #f #f #f #f #f #t)#(a b c) >SECTION(4 1 2) >(quote (quote a)) ==> (quote a) >(quote (quote a)) ==> (quote a) >SECTION(4 1 3) >(#<primitive-procedure *> 3 4) ==> 12 >SECTION(4 1 4) >(#<CLOSURE <anon> "r4rstest.scm": (x) (+ x x)> 4) ==> 8 >(#<CLOSURE reverse-subtract "r4rstest.scm": (x y) (- y x)> 7 10) ==> 3 >(#<CLOSURE <anon> "r4rstest.scm": (y) (+ x y)> 6) ==> 10 >(#<CLOSURE <anon> "r4rstest.scm": x x> 3 4 5 6) ==> (3 4 5 6) >(#<CLOSURE <anon> "r4rstest.scm": (x y . z) z> 3 4 5 6) ==> (5 6) >SECTION(4 1 5) >(if yes) ==> yes >(if no) ==> no >(if 1) ==> 1 >SECTION(4 1 6) >(define 3) ==> 3 >(set! 5) ==> 5 >SECTION(4 2 1) >(cond greater) ==> greater >(cond equal) ==> equal >(cond 2) ==> 2 >(case composite) ==> composite >(case consonant) ==> consonant >(and #t) ==> #t >(and #f) ==> #f >(and (f g)) ==> (f g) >(and #t) ==> #t >(or #t) ==> #t >(or #t) ==> #t >(or #f) ==> #f >(or #f) ==> #f >(or (b c)) ==> (b c) >SECTION(4 2 2) >(let 6) ==> 6 >(let 35) ==> 35 >(let* 70) ==> 70 >(letrec #t) ==> #t >(let 5) ==> 5 >(let 34) ==> 34 >(let 6) ==> 6 >(let 34) ==> 34 >(let 34) ==> 34 >(let* 7) ==> 7 >(let* 34) ==> 34 >(let* 8) ==> 8 >(let* 34) ==> 34 >(letrec 9) ==> 9 >(letrec 34) ==> 34 >(letrec 10) ==> 10 >(letrec 34) ==> 34 >SECTION(4 2 3) >(begin 6) ==> 6 >SECTION(4 2 4) >(do #(0 1 2 3 4)) ==> #(0 1 2 3 4) >(do 25) ==> 25 >(do 25) ==> 25 >(let 1) ==> 1 >(let ((6 1 3) (-5 -2))) ==> ((6 1 3) (-5 -2)) >(let -1) ==> -1 >SECTION(4 2 6) >(quasiquote (list 3 4)) ==> (list 3 4) >(quasiquote (list a (quote a))) ==> (list a (quote a)) >(quasiquote (a 3 4 5 6 b)) ==> (a 3 4 5 6 b) >(quasiquote ((foo 7) . cons)) ==> ((foo 7) . cons) >(quasiquote #(10 5 2 4 3 8)) ==> #(10 5 2 4 3 8) >(quasiquote 5) ==> 5 >(quasiquote (a (quasiquote (b (unquote (+ 1 2)) (unquote (foo 4 d)) e)) f)) ==> (a (quasiquote (b (unquote (+ 1 2)) (unquote (foo 4 d)) e)) f) >(quasiquote (a (quasiquote (b (unquote x) (unquote (quote y)) d)) e)) ==> (a (quasiquote (b (unquote x) (unquote (quote y)) d)) e) >(quasiquote (list 3 4)) ==> (list 3 4) >(quasiquote (quasiquote (list (unquote (+ 1 2)) 4))) ==> (quasiquote (list (unquote (+ 1 2)) 4)) >SECTION(5 2 1) >(tprint #t) ==> #t >(define 6) ==> 6 >(define 1) ==> 1 >(define 9) ==> 9 >(define 9) ==> 9 >(define 10) ==> 10 >(#<CLOSURE add3 "r4rstest.scm": (x) (#@+ #@x 3)> 6) ==> (3 6) >(#<CLOSURE add3 "r4rstest.scm": (x) (#@+ #@x 3)> 6) ==> 9 >SECTION(5 2 2) >(define 45) ==> 45 >(#<CLOSURE foo "r4rstest.scm": () (#@define ((x 5)) x)>) ==> 5 >(define 34) ==> 34 >(#<CLOSURE foo "r4rstest.scm": () (#@define ((x 5)) x)>) ==> 5 >(define 34) ==> 34 >(#<CLOSURE foo "r4rstest.scm": (x) ((lambda () (define x 5) x)) x> 88) ==> 88 >(#<CLOSURE foo "r4rstest.scm": (x) (#@let () (#@define ((x 5)) #@x)) #@x> 4) ==> 4 >(define 34) ==> 34 >(internal-define 99) ==> 99 >(internal-define 77) ==> 77 >SECTION(6 1) >(#<primitive-procedure not> #t) ==> #f >(#<primitive-procedure not> 3) ==> #f >(#<primitive-procedure not> (3)) ==> #f >(#<primitive-procedure not> #f) ==> #t >(#<primitive-procedure not> ()) ==> #f >(#<primitive-procedure not> ()) ==> #f >(#<primitive-procedure not> nil) ==> #f >SECTION(6 2) >(#<primitive-procedure eqv?> a a) ==> #t >(#<primitive-procedure eqv?> a b) ==> #f >(#<primitive-procedure eqv?> 2 2) ==> #t >(#<primitive-procedure eqv?> () ()) ==> #t >(#<primitive-procedure eqv?> 10000 10000) ==> #t >(#<primitive-procedure eqv?> (1 . 2) (1 . 2)) ==> #f >(#<primitive-procedure eqv?> #<CLOSURE <anon> "r4rstest.scm": () 1> #<CLOSURE <anon> "r4rstest.scm": () 2>) ==> #f >(#<primitive-procedure eqv?> #f nil) ==> #f >(#<primitive-procedure eqv?> #<CLOSURE p "r4rstest.scm": (x) x> #<CLOSURE p "r4rstest.scm": (x) x>) ==> #t >(#<primitive-procedure eqv?> #<CLOSURE <anon> "r4rstest.scm": () (set! n (+ n 1)) n> #<CLOSURE <anon> "r4rstest.scm": () (set! n (+ n 1)) n>) ==> #t >(#<primitive-procedure eqv?> #<CLOSURE <anon> "r4rstest.scm": () (set! n (+ n 1)) n> #<CLOSURE <anon> "r4rstest.scm": () (set! n (+ n 1)) n>) ==> #f >(#<primitive-procedure eqv?> #<CLOSURE f "r4rstest.scm": () (if (eqv? f g) (quote f) (quote both))> #<CLOSURE g "r4rstest.scm": () (if (eqv? f g) (quote g) (quote both))>) ==> #f >(#<primitive-procedure eq?> a a) ==> #t >(#<primitive-procedure eq?> (a) (a)) ==> #f >(#<primitive-procedure eq?> () ()) ==> #t >(#<primitive-procedure eq?> #<primitive-procedure car> #<primitive-procedure car>) ==> #t >(#<primitive-procedure eq?> (a) (a)) ==> #t >(#<primitive-procedure eq?> #() #()) ==> #t >(#<primitive-procedure eq?> #<CLOSURE x "r4rstest.scm": (x) x> #<CLOSURE x "r4rstest.scm": (x) x>) ==> #t >(#<primitive-procedure equal?> a a) ==> #t >(#<primitive-procedure equal?> (a) (a)) ==> #t >(#<primitive-procedure equal?> (a (b) c) (a (b) c)) ==> #t >(#<primitive-procedure equal?> "abc" "abc") ==> #t >(#<primitive-procedure equal?> 2 2) ==> #t >(#<primitive-procedure equal?> #(a a a a a) #(a a a a a)) ==> #t >SECTION(6 3) >(dot (a b c d e)) ==> (a b c d e) >(#<primitive-procedure list?> (a b c)) ==> #t >(set-cdr! (a . 4)) ==> (a . 4) >(#<primitive-procedure eqv?> (a . 4) (a . 4)) ==> #t >(dot (a b c . d)) ==> (a b c . d) >(#<primitive-procedure list?> (a . 4)) ==> #f >(list? #f) ==> #f >(#<primitive-procedure cons> a ()) ==> (a) >(#<primitive-procedure cons> (a) (b c d)) ==> ((a) b c d) >(#<primitive-procedure cons> "a" (b c)) ==> ("a" b c) >(#<primitive-procedure cons> a 3) ==> (a . 3) >(#<primitive-procedure cons> (a b) c) ==> ((a b) . c) >(#<primitive-procedure car> (a b c)) ==> a >(#<primitive-procedure car> ((a) b c d)) ==> (a) >(#<primitive-procedure car> (1 . 2)) ==> 1 >(#<primitive-procedure cdr> ((a) b c d)) ==> (b c d) >(#<primitive-procedure cdr> (1 . 2)) ==> 2 >(#<primitive-procedure list> a 7 c) ==> (a 7 c) >(#<primitive-procedure list>) ==> () >(#<primitive-procedure length> (a b c)) ==> 3 >(#<primitive-procedure length> (a (b) (c d e))) ==> 3 >(#<primitive-procedure length> ()) ==> 0 >(#<primitive-procedure append> (x) (y)) ==> (x y) >(#<primitive-procedure append> (a) (b c d)) ==> (a b c d) >(#<primitive-procedure append> (a (b)) ((c))) ==> (a (b) (c)) >(#<primitive-procedure append>) ==> () >(#<primitive-procedure append> (a b) (c . d)) ==> (a b c . d) >(#<primitive-procedure append> () a) ==> a >(#<primitive-procedure reverse> (a b c)) ==> (c b a) >(#<primitive-procedure reverse> (a (b c) d (e (f)))) ==> ((e (f)) d (b c) a) >(#<primitive-procedure list-ref> (a b c d) 2) ==> c >(#<primitive-procedure memq> a (a b c)) ==> (a b c) >(#<primitive-procedure memq> b (a b c)) ==> (b c) >(#<primitive-procedure memq> a (b c d)) ==> #f >(#<primitive-procedure memq> (a) (b (a) c)) ==> #f >(#<primitive-procedure member> (a) (b (a) c)) ==> ((a) c) >(#<primitive-procedure memv> 101 (100 101 102)) ==> (101 102) >(#<primitive-procedure assq> a ((a 1) (b 2) (c 3))) ==> (a 1) >(#<primitive-procedure assq> b ((a 1) (b 2) (c 3))) ==> (b 2) >(#<primitive-procedure assq> d ((a 1) (b 2) (c 3))) ==> #f >(#<primitive-procedure assq> (a) (((a)) ((b)) ((c)))) ==> #f >(#<primitive-procedure assoc> (a) (((a)) ((b)) ((c)))) ==> ((a)) >(#<primitive-procedure assv> 5 ((2 3) (5 7) (11 13))) ==> (5 7) >SECTION(6 4) >(#<primitive-procedure symbol?> a) ==> #t >(standard-case #t) ==> #t >(standard-case #t) ==> #t >(#<primitive-procedure symbol->string> flying-fish) ==> "flying-fish" >(#<primitive-procedure symbol->string> martin) ==> "martin" >(#<primitive-procedure symbol->string> \Malvina) ==> "Malvina" >(standard-case #t) ==> #t >(string-set! "cb") ==> "cb" >(#<primitive-procedure symbol->string> ab) ==> "ab" >(#<primitive-procedure string->symbol> "ab") ==> ab >(#<primitive-procedure eq?> mississippi mississippi) ==> #t >(string->symbol #f) ==> #f >(#<primitive-procedure string->symbol> "jollywog") ==> jollywog >SECTION(6 5 5) >(#<primitive-procedure number?> 3) ==> #t >(#<primitive-procedure complex?> 3) ==> #t >(#<primitive-procedure real?> 3) ==> #t >(#<primitive-procedure rational?> 3) ==> #t >(#<primitive-procedure integer?> 3) ==> #t >(#<primitive-procedure exact?> 3) ==> #t >(#<primitive-procedure inexact?> 3) ==> #f >(#<primitive-procedure integer-expt> 0 0) ==> 1 >(#<primitive-procedure integer-expt> 0 1) ==> 0 >(#<primitive-procedure integer-expt> 0 256) ==> 0 >(#<primitive-procedure integer-expt> -1 256) ==> 1 >(#<primitive-procedure integer-expt> -1 255) ==> -1 >(#<primitive-procedure integer-expt> -1 -256) ==> 1 >(#<primitive-procedure integer-expt> -1 -255) ==> -1 >(#<primitive-procedure integer-expt> 256 0) ==> 1 >(#<primitive-procedure integer-expt> -256 0) ==> 1 >(#<primitive-procedure integer-expt> 256 1) ==> 256 >(#<primitive-procedure integer-expt> -256 1) ==> -256 >(#<primitive-procedure integer-expt> 2 3) ==> 8 >(#<primitive-procedure integer-expt> -2 3) ==> -8 >(#<primitive-procedure integer-expt> 3 2) ==> 9 >(#<primitive-procedure integer-expt> -3 2) ==> 9 >(#<primitive-procedure => 22 22 22) ==> #t >(#<primitive-procedure => 22 22) ==> #t >(#<primitive-procedure => 34 34 35) ==> #f >(#<primitive-procedure => 34 35) ==> #f >(#<primitive-procedure >> 3 -6246) ==> #t >(#<primitive-procedure >> 9 9 -2424) ==> #f >(#<primitive-procedure >=> 3 -4 -6246) ==> #t >(#<primitive-procedure >=> 9 9) ==> #t >(#<primitive-procedure >=> 8 9) ==> #f >(#<primitive-procedure <> -1 2 3 4 5 6 7 8) ==> #t >(#<primitive-procedure <> -1 2 3 4 4 5 6 7) ==> #f >(#<primitive-procedure <=> -1 2 3 4 5 6 7 8) ==> #t >(#<primitive-procedure <=> -1 2 3 4 4 5 6 7) ==> #t >(#<primitive-procedure <> 1 3 2) ==> #f >(#<primitive-procedure >=> 1 3 2) ==> #f >(#<primitive-procedure zero?> 0) ==> #t >(#<primitive-procedure zero?> 1) ==> #f >(#<primitive-procedure zero?> -1) ==> #f >(#<primitive-procedure zero?> -100) ==> #f >(#<primitive-procedure positive?> 4) ==> #t >(#<primitive-procedure positive?> -4) ==> #f >(#<primitive-procedure positive?> 0) ==> #f >(#<primitive-procedure negative?> 4) ==> #f >(#<primitive-procedure negative?> -4) ==> #t >(#<primitive-procedure negative?> 0) ==> #f >(#<primitive-procedure odd?> 3) ==> #t >(#<primitive-procedure odd?> 2) ==> #f >(#<primitive-procedure odd?> -4) ==> #f >(#<primitive-procedure odd?> -1) ==> #t >(#<primitive-procedure even?> 3) ==> #f >(#<primitive-procedure even?> 2) ==> #t >(#<primitive-procedure even?> -4) ==> #t >(#<primitive-procedure even?> -1) ==> #f >(#<primitive-procedure max> 34 5 7 38 6) ==> 38 >(#<primitive-procedure min> 3 5 5 330 4 -24) ==> -24 >(#<primitive-procedure +> 3 4) ==> 7 >(#<primitive-procedure +> 3) ==> 3 >(#<primitive-procedure +>) ==> 0 >(#<primitive-procedure *> 4) ==> 4 >(#<primitive-procedure *>) ==> 1 >(#<primitive-procedure /> 1) ==> 1 >(#<primitive-procedure /> -1) ==> -1 >(#<primitive-procedure /> 6 3) ==> 2 >(#<primitive-procedure /> 6 -2) ==> -3 >(#<primitive-procedure /> -6 2) ==> -3 >(#<primitive-procedure /> -6 -2) ==> 3 >(#<primitive-procedure -> 3 4) ==> -1 >(#<primitive-procedure -> 3) ==> -3 >(#<primitive-procedure abs> -7) ==> 7 >(#<primitive-procedure abs> 7) ==> 7 >(#<primitive-procedure abs> 0) ==> 0 >(#<primitive-procedure quotient> 35 7) ==> 5 >(#<primitive-procedure quotient> -35 7) ==> -5 >(#<primitive-procedure quotient> 35 -7) ==> -5 >(#<primitive-procedure quotient> -35 -7) ==> 5 >(#<primitive-procedure modulo> 13 4) ==> 1 >(#<primitive-procedure remainder> 13 4) ==> 1 >(#<primitive-procedure modulo> -13 4) ==> 3 >(#<primitive-procedure remainder> -13 4) ==> -1 >(#<primitive-procedure modulo> 13 -4) ==> -3 >(#<primitive-procedure remainder> 13 -4) ==> 1 >(#<primitive-procedure modulo> -13 -4) ==> -1 >(#<primitive-procedure remainder> -13 -4) ==> -1 >(#<primitive-procedure modulo> 0 86400) ==> 0 >(#<primitive-procedure modulo> 0 -86400) ==> 0 >(#<CLOSURE divtest "r4rstest.scm": (n1 n2) (= n1 (+ (* n2 (quotient n1 n2)) (remainder n1 n2)))> 238 9) ==> #t >(#<CLOSURE divtest "r4rstest.scm": (n1 n2) (#@= #@n1 (#@+ (#@* #@n2 (#@quotient #@n1 #@n2)) (#@remainder #@n1 #@n2)))> -238 9) ==> #t >(#<CLOSURE divtest "r4rstest.scm": (n1 n2) (#@= #@n1 (#@+ (#@* #@n2 (#@quotient #@n1 #@n2)) (#@remainder #@n1 #@n2)))> 238 -9) ==> #t >(#<CLOSURE divtest "r4rstest.scm": (n1 n2) (#@= #@n1 (#@+ (#@* #@n2 (#@quotient #@n1 #@n2)) (#@remainder #@n1 #@n2)))> -238 -9) ==> #t >(#<primitive-procedure gcd> 0 4) ==> 4 >(#<primitive-procedure gcd> -4 0) ==> 4 >(#<primitive-procedure gcd> 32 -36) ==> 4 >(#<primitive-procedure gcd>) ==> 0 >(#<primitive-procedure lcm> 32 -36) ==> 288 >(#<primitive-procedure lcm>) ==> 1 >SECTION(6 5 5) >(#<CLOSURE test-string->number "r4rstest.scm": (str) (#@define ((ans (string->number str))) (cond ((not ans) #t) ((number? ans) #t) (else ans)))> "+#.#") ==> #t >(#<CLOSURE test-string->number "r4rstest.scm": (str) (#@define ((ans (#@string->number #@str))) (#@cond ((#@not #@ans) #t) ((number? ans) #t) (#t ans)))> "-#.#") ==> #t >(#<CLOSURE test-string->number "r4rstest.scm": (str) (#@define ((ans (#@string->number #@str))) (#@cond ((#@not #@ans) #t) ((number? ans) #t) (#t ans)))> "#.#") ==> #t >(#<CLOSURE test-string->number "r4rstest.scm": (str) (#@define ((ans (#@string->number #@str))) (#@cond ((#@not #@ans) #t) ((number? ans) #t) (#t ans)))> "1/0") ==> #t >(#<CLOSURE test-string->number "r4rstest.scm": (str) (#@define ((ans (#@string->number #@str))) (#@cond ((#@not #@ans) #t) ((number? ans) #t) (#t ans)))> "-1/0") ==> #t >(#<CLOSURE test-string->number "r4rstest.scm": (str) (#@define ((ans (#@string->number #@str))) (#@cond ((#@not #@ans) #t) ((number? ans) #t) (#t ans)))> "0/0") ==> #t >(#<CLOSURE test-string->number "r4rstest.scm": (str) (#@define ((ans (#@string->number #@str))) (#@cond ((#@not #@ans) #t) ((number? ans) #t) (#t ans)))> "+1/0i") ==> #t >(#<CLOSURE test-string->number "r4rstest.scm": (str) (#@define ((ans (#@string->number #@str))) (#@cond ((#@not #@ans) #t) ((number? ans) #t) (#t ans)))> "-1/0i") ==> #t >(#<CLOSURE test-string->number "r4rstest.scm": (str) (#@define ((ans (#@string->number #@str))) (#@cond ((#@not #@ans) #t) ((number? ans) #t) (#t ans)))> "0/0i") ==> #t >(#<CLOSURE test-string->number "r4rstest.scm": (str) (#@define ((ans (#@string->number #@str))) (#@cond ((#@not #@ans) #t) ((number? ans) #t) (#t ans)))> "0/0-0/0i") ==> #t >(#<CLOSURE test-string->number "r4rstest.scm": (str) (#@define ((ans (#@string->number #@str))) (#@cond ((#@not #@ans) #t) ((number? ans) #t) (#t ans)))> "1/0-1/0i") ==> #t >(#<CLOSURE test-string->number "r4rstest.scm": (str) (#@define ((ans (#@string->number #@str))) (#@cond ((#@not #@ans) #t) ((number? ans) #t) (#t ans)))> "-1/0+1/0i") ==> #t >(#<CLOSURE test-string->number "r4rstest.scm": (str) (#@define ((ans (#@string->number #@str))) (#@cond ((#@not #@ans) #t) ((number? ans) #t) (#t ans)))> "#i") ==> #t >(#<CLOSURE test-string->number "r4rstest.scm": (str) (#@define ((ans (#@string->number #@str))) (#@cond ((#@not #@ans) #t) ((number? ans) #t) (#t ans)))> "#e") ==> #t >(#<CLOSURE test-string->number "r4rstest.scm": (str) (#@define ((ans (#@string->number #@str))) (#@cond ((#@not #@ans) #t) ((number? ans) #t) (#t ans)))> "#") ==> #t >(#<CLOSURE test-string->number "r4rstest.scm": (str) (#@define ((ans (#@string->number #@str))) (#@cond ((#@not #@ans) #t) ((number? ans) #t) (#t ans)))> "#i0/0") ==> #t >SECTION(6 5 9) >(#<primitive-procedure number->string> 0) ==> "0" >(#<primitive-procedure number->string> 100) ==> "100" >(#<primitive-procedure number->string> 256 16) ==> "100" >(#<primitive-procedure string->number> "100") ==> 100 >(#<primitive-procedure string->number> "100" 16) ==> 256 >(#<primitive-procedure string->number> "") ==> #f >(#<primitive-procedure string->number> ".") ==> #f >(#<primitive-procedure string->number> "d") ==> #f >(#<primitive-procedure string->number> "D") ==> #f >(#<primitive-procedure string->number> "i") ==> #f >(#<primitive-procedure string->number> "I") ==> #f >(#<primitive-procedure string->number> "3i") ==> #f >(#<primitive-procedure string->number> "3I") ==> #f >(#<primitive-procedure string->number> "33i") ==> #f >(#<primitive-procedure string->number> "33I") ==> #f >(#<primitive-procedure string->number> "3.3i") ==> #f >(#<primitive-procedure string->number> "3.3I") ==> #f >(#<primitive-procedure string->number> "-") ==> #f >(#<primitive-procedure string->number> "+") ==> #f >(string->number #t) ==> #t >(string->number #t) ==> #t >SECTION(6 6) >(#<primitive-procedure eqv?> #\space #\space) ==> #t >(#<primitive-procedure eqv?> #\space #\space) ==> #t >(#<primitive-procedure char?> #\a) ==> #t >(#<primitive-procedure char?> #\() ==> #t >(#<primitive-procedure char?> #\space) ==> #t >(#<primitive-procedure char?> #\nl) ==> #t >(#<primitive-procedure char=?> #\A #\B) ==> #f >(#<primitive-procedure char=?> #\a #\b) ==> #f >(#<primitive-procedure char=?> #\9 #\0) ==> #f >(#<primitive-procedure char=?> #\A #\A) ==> #t >(#<primitive-procedure char<?> #\A #\B) ==> #t >(#<primitive-procedure char<?> #\a #\b) ==> #t >(#<primitive-procedure char<?> #\9 #\0) ==> #f >(#<primitive-procedure char<?> #\A #\A) ==> #f >(#<primitive-procedure char>?> #\A #\B) ==> #f >(#<primitive-procedure char>?> #\a #\b) ==> #f >(#<primitive-procedure char>?> #\9 #\0) ==> #t >(#<primitive-procedure char>?> #\A #\A) ==> #f >(#<primitive-procedure char<=?> #\A #\B) ==> #t >(#<primitive-procedure char<=?> #\a #\b) ==> #t >(#<primitive-procedure char<=?> #\9 #\0) ==> #f >(#<primitive-procedure char<=?> #\A #\A) ==> #t >(#<primitive-procedure char>=?> #\A #\B) ==> #f >(#<primitive-procedure char>=?> #\a #\b) ==> #f >(#<primitive-procedure char>=?> #\9 #\0) ==> #t >(#<primitive-procedure char>=?> #\A #\A) ==> #t >(#<primitive-procedure char-ci=?> #\A #\B) ==> #f >(#<primitive-procedure char-ci=?> #\a #\B) ==> #f >(#<primitive-procedure char-ci=?> #\A #\b) ==> #f >(#<primitive-procedure char-ci=?> #\a #\b) ==> #f >(#<primitive-procedure char-ci=?> #\9 #\0) ==> #f >(#<primitive-procedure char-ci=?> #\A #\A) ==> #t >(#<primitive-procedure char-ci=?> #\A #\a) ==> #t >(#<primitive-procedure char-ci<?> #\A #\B) ==> #t >(#<primitive-procedure char-ci<?> #\a #\B) ==> #t >(#<primitive-procedure char-ci<?> #\A #\b) ==> #t >(#<primitive-procedure char-ci<?> #\a #\b) ==> #t >(#<primitive-procedure char-ci<?> #\9 #\0) ==> #f >(#<primitive-procedure char-ci<?> #\A #\A) ==> #f >(#<primitive-procedure char-ci<?> #\A #\a) ==> #f >(#<primitive-procedure char-ci>?> #\A #\B) ==> #f >(#<primitive-procedure char-ci>?> #\a #\B) ==> #f >(#<primitive-procedure char-ci>?> #\A #\b) ==> #f >(#<primitive-procedure char-ci>?> #\a #\b) ==> #f >(#<primitive-procedure char-ci>?> #\9 #\0) ==> #t >(#<primitive-procedure char-ci>?> #\A #\A) ==> #f >(#<primitive-procedure char-ci>?> #\A #\a) ==> #f >(#<primitive-procedure char-ci<=?> #\A #\B) ==> #t >(#<primitive-procedure char-ci<=?> #\a #\B) ==> #t >(#<primitive-procedure char-ci<=?> #\A #\b) ==> #t >(#<primitive-procedure char-ci<=?> #\a #\b) ==> #t >(#<primitive-procedure char-ci<=?> #\9 #\0) ==> #f >(#<primitive-procedure char-ci<=?> #\A #\A) ==> #t >(#<primitive-procedure char-ci<=?> #\A #\a) ==> #t >(#<primitive-procedure char-ci>=?> #\A #\B) ==> #f >(#<primitive-procedure char-ci>=?> #\a #\B) ==> #f >(#<primitive-procedure char-ci>=?> #\A #\b) ==> #f >(#<primitive-procedure char-ci>=?> #\a #\b) ==> #f >(#<primitive-procedure char-ci>=?> #\9 #\0) ==> #t >(#<primitive-procedure char-ci>=?> #\A #\A) ==> #t >(#<primitive-procedure char-ci>=?> #\A #\a) ==> #t >(#<primitive-procedure char-alphabetic?> #\a) ==> #t >(#<primitive-procedure char-alphabetic?> #\A) ==> #t >(#<primitive-procedure char-alphabetic?> #\z) ==> #t >(#<primitive-procedure char-alphabetic?> #\Z) ==> #t >(#<primitive-procedure char-alphabetic?> #\0) ==> #f >(#<primitive-procedure char-alphabetic?> #\9) ==> #f >(#<primitive-procedure char-alphabetic?> #\space) ==> #f >(#<primitive-procedure char-alphabetic?> #\;) ==> #f >(#<primitive-procedure char-numeric?> #\a) ==> #f >(#<primitive-procedure char-numeric?> #\A) ==> #f >(#<primitive-procedure char-numeric?> #\z) ==> #f >(#<primitive-procedure char-numeric?> #\Z) ==> #f >(#<primitive-procedure char-numeric?> #\0) ==> #t >(#<primitive-procedure char-numeric?> #\9) ==> #t >(#<primitive-procedure char-numeric?> #\space) ==> #f >(#<primitive-procedure char-numeric?> #\;) ==> #f >(#<primitive-procedure char-whitespace?> #\a) ==> #f >(#<primitive-procedure char-whitespace?> #\A) ==> #f >(#<primitive-procedure char-whitespace?> #\z) ==> #f >(#<primitive-procedure char-whitespace?> #\Z) ==> #f >(#<primitive-procedure char-whitespace?> #\0) ==> #f >(#<primitive-procedure char-whitespace?> #\9) ==> #f >(#<primitive-procedure char-whitespace?> #\space) ==> #t >(#<primitive-procedure char-whitespace?> #\;) ==> #f >(#<primitive-procedure char-upper-case?> #\0) ==> #f >(#<primitive-procedure char-upper-case?> #\9) ==> #f >(#<primitive-procedure char-upper-case?> #\space) ==> #f >(#<primitive-procedure char-upper-case?> #\;) ==> #f >(#<primitive-procedure char-lower-case?> #\0) ==> #f >(#<primitive-procedure char-lower-case?> #\9) ==> #f >(#<primitive-procedure char-lower-case?> #\space) ==> #f >(#<primitive-procedure char-lower-case?> #\;) ==> #f >(#<primitive-procedure integer->char> 46) ==> #\. >(#<primitive-procedure integer->char> 65) ==> #\A >(#<primitive-procedure integer->char> 97) ==> #\a >(#<primitive-procedure char-upcase> #\A) ==> #\A >(#<primitive-procedure char-upcase> #\a) ==> #\A >(#<primitive-procedure char-downcase> #\A) ==> #\a >(#<primitive-procedure char-downcase> #\a) ==> #\a >SECTION(6 7) >(#<primitive-procedure string?> "The word \"recursion\\\" has many meanings.") ==> #t >(string-set! "?**") ==> "?**" >(#<primitive-procedure string> #\a #\b #\c) ==> "abc" >(#<primitive-procedure string>) ==> "" >(#<primitive-procedure string-length> "abc") ==> 3 >(#<primitive-procedure string-ref> "abc" 0) ==> #\a >(#<primitive-procedure string-ref> "abc" 2) ==> #\c >(#<primitive-procedure string-length> "") ==> 0 >(#<primitive-procedure substring> "ab" 0 0) ==> "" >(#<primitive-procedure substring> "ab" 1 1) ==> "" >(#<primitive-procedure substring> "ab" 2 2) ==> "" >(#<primitive-procedure substring> "ab" 0 1) ==> "a" >(#<primitive-procedure substring> "ab" 1 2) ==> "b" >(#<primitive-procedure substring> "ab" 0 2) ==> "ab" >(#<primitive-procedure string-append> "foo" "bar") ==> "foobar" >(#<primitive-procedure string-append> "foo") ==> "foo" >(#<primitive-procedure string-append> "foo" "") ==> "foo" >(#<primitive-procedure string-append> "" "foo") ==> "foo" >(#<primitive-procedure string-append>) ==> "" >(#<primitive-procedure make-string> 0) ==> "" >(#<primitive-procedure string=?> "" "") ==> #t >(#<primitive-procedure string<?> "" "") ==> #f >(#<primitive-procedure string>?> "" "") ==> #f >(#<primitive-procedure string<=?> "" "") ==> #t >(#<primitive-procedure string>=?> "" "") ==> #t >(#<primitive-procedure string-ci=?> "" "") ==> #t >(#<primitive-procedure string-ci<?> "" "") ==> #f >(#<primitive-procedure string-ci>?> "" "") ==> #f >(#<primitive-procedure string-ci<=?> "" "") ==> #t >(#<primitive-procedure string-ci>=?> "" "") ==> #t >(#<primitive-procedure string=?> "A" "B") ==> #f >(#<primitive-procedure string=?> "a" "b") ==> #f >(#<primitive-procedure string=?> "9" "0") ==> #f >(#<primitive-procedure string=?> "A" "A") ==> #t >(#<primitive-procedure string<?> "A" "B") ==> #t >(#<primitive-procedure string<?> "a" "b") ==> #t >(#<primitive-procedure string<?> "9" "0") ==> #f >(#<primitive-procedure string<?> "A" "A") ==> #f >(#<primitive-procedure string>?> "A" "B") ==> #f >(#<primitive-procedure string>?> "a" "b") ==> #f >(#<primitive-procedure string>?> "9" "0") ==> #t >(#<primitive-procedure string>?> "A" "A") ==> #f >(#<primitive-procedure string<=?> "A" "B") ==> #t >(#<primitive-procedure string<=?> "a" "b") ==> #t >(#<primitive-procedure string<=?> "9" "0") ==> #f >(#<primitive-procedure string<=?> "A" "A") ==> #t >(#<primitive-procedure string>=?> "A" "B") ==> #f >(#<primitive-procedure string>=?> "a" "b") ==> #f >(#<primitive-procedure string>=?> "9" "0") ==> #t >(#<primitive-procedure string>=?> "A" "A") ==> #t >(#<primitive-procedure string-ci=?> "A" "B") ==> #f >(#<primitive-procedure string-ci=?> "a" "B") ==> #f >(#<primitive-procedure string-ci=?> "A" "b") ==> #f >(#<primitive-procedure string-ci=?> "a" "b") ==> #f >(#<primitive-procedure string-ci=?> "9" "0") ==> #f >(#<primitive-procedure string-ci=?> "A" "A") ==> #t >(#<primitive-procedure string-ci=?> "A" "a") ==> #t >(#<primitive-procedure string-ci<?> "A" "B") ==> #t >(#<primitive-procedure string-ci<?> "a" "B") ==> #t >(#<primitive-procedure string-ci<?> "A" "b") ==> #t >(#<primitive-procedure string-ci<?> "a" "b") ==> #t >(#<primitive-procedure string-ci<?> "9" "0") ==> #f >(#<primitive-procedure string-ci<?> "A" "A") ==> #f >(#<primitive-procedure string-ci<?> "A" "a") ==> #f >(#<primitive-procedure string-ci>?> "A" "B") ==> #f >(#<primitive-procedure string-ci>?> "a" "B") ==> #f >(#<primitive-procedure string-ci>?> "A" "b") ==> #f >(#<primitive-procedure string-ci>?> "a" "b") ==> #f >(#<primitive-procedure string-ci>?> "9" "0") ==> #t >(#<primitive-procedure string-ci>?> "A" "A") ==> #f >(#<primitive-procedure string-ci>?> "A" "a") ==> #f >(#<primitive-procedure string-ci<=?> "A" "B") ==> #t >(#<primitive-procedure string-ci<=?> "a" "B") ==> #t >(#<primitive-procedure string-ci<=?> "A" "b") ==> #t >(#<primitive-procedure string-ci<=?> "a" "b") ==> #t >(#<primitive-procedure string-ci<=?> "9" "0") ==> #f >(#<primitive-procedure string-ci<=?> "A" "A") ==> #t >(#<primitive-procedure string-ci<=?> "A" "a") ==> #t >(#<primitive-procedure string-ci>=?> "A" "B") ==> #f >(#<primitive-procedure string-ci>=?> "a" "B") ==> #f >(#<primitive-procedure string-ci>=?> "A" "b") ==> #f >(#<primitive-procedure string-ci>=?> "a" "b") ==> #f >(#<primitive-procedure string-ci>=?> "9" "0") ==> #t >(#<primitive-procedure string-ci>=?> "A" "A") ==> #t >(#<primitive-procedure string-ci>=?> "A" "a") ==> #t >SECTION(6 8) >(#<primitive-procedure vector?> #(0 (2 2 2 2) "Anna")) ==> #t >(#<primitive-procedure vector> a b c) ==> #(a b c) >(#<primitive-procedure vector>) ==> #() >(#<primitive-procedure vector-length> #(0 (2 2 2 2) "Anna")) ==> 3 >(#<primitive-procedure vector-length> #()) ==> 0 >(#<primitive-procedure vector-ref> #(1 1 2 3 5 8 13 21) 5) ==> 8 >(vector-set #(0 ("Sue" "Sue") "Anna")) ==> #(0 ("Sue" "Sue") "Anna") >(#<primitive-procedure make-vector> 2 hi) ==> #(hi hi) >(#<primitive-procedure make-vector> 0) ==> #() >(#<primitive-procedure make-vector> 0 a) ==> #() >SECTION(6 9) >(#<primitive-procedure procedure?> #<primitive-procedure car>) ==> #t >(#<primitive-procedure procedure?> car) ==> #f >(#<primitive-procedure procedure?> #<CLOSURE <anon> "r4rstest.scm": (x) (* x x)>) ==> #t >(#<primitive-procedure procedure?> (lambda (x) (* x x))) ==> #f >(#<primitive-procedure call-with-current-continuation> #<primitive-procedure procedure?>) ==> #t >(#<primitive-procedure procedure?> #<primitive-procedure />) ==> #t >(#<primitive-procedure apply> #<primitive-procedure +> (3 4)) ==> 7 >(#<primitive-procedure apply> #<CLOSURE <anon> "r4rstest.scm": (a b) (+ a b)> (3 4)) ==> 7 >(#<primitive-procedure apply> #<primitive-procedure +> 10 (3 4)) ==> 17 >(#<primitive-procedure apply> #<primitive-procedure list> ()) ==> () >(#<CLOSURE <anon> "r4rstest.scm": args (f (apply g args))> 12 75) ==> 30 >(#<primitive-procedure map> #<primitive-procedure cadr> ((a b) (d e) (g h))) ==> (b e h) >(#<primitive-procedure map> #<primitive-procedure +> (1 2 3) (4 5 6)) ==> (5 7 9) >(#<primitive-procedure map> #<primitive-procedure +> (1 2 3)) ==> (1 2 3) >(#<primitive-procedure map> #<primitive-procedure *> (1 2 3)) ==> (1 2 3) >(#<primitive-procedure map> #<primitive-procedure -> (1 2 3)) ==> (-1 -2 -3) >(for-each #(0 1 4 9 16)) ==> #(0 1 4 9 16) >(#<primitive-procedure call-with-current-continuation> #<CLOSURE <anon> "r4rstest.scm": (exit) (for-each (lambda (x) (if (negative? x) (exit x))) (quote (54 0 37 -3 245 19))) #t>) ==> -3 >(#<CLOSURE list-length "r4rstest.scm": (obj) (call-with-current-continuation (lambda (return) (letrec ((r (lambda (obj) (cond ((null? obj) 0) ((pair? obj) (+ (r (cdr obj)) 1)) (else (return #f)))))) (r obj))))> (1 2 3 4)) ==> 4 >(#<CLOSURE list-length "r4rstest.scm": (obj) (#@call-with-current-continuation (#@lambda (return) (#@letrec ((r (#@lambda (obj) (#@cond ((#@null? #@obj) 0) ((#@pair? #@obj) (#@+ (#@r (#@cdr #@obj)) 1)) (#t (return #f)))))) (#@r #@obj))))> (a b . c)) ==> #f >(#<primitive-procedure map> #<primitive-procedure cadr> ()) ==> () >SECTION(6 10 1) >(#<primitive-procedure input-port?> #<input-port 0>) ==> #t >(#<primitive-procedure output-port?> #<output-port /dev/pts/5>) ==> #t >(#<CLOSURE call-with-input-file "/var/tmp/portage/dev-scheme/scm-5.5.6-r3/work/scm/Init5e6.scm": (str proc) (#@call-with-open-ports (#@open-input-file #@str) #@proc)> "r4rstest.scm" #<primitive-procedure input-port?>) ==> #t >(#<primitive-procedure input-port?> #<input-port "r4rstest.scm">) ==> #t >SECTION(6 10 2) >(#<primitive-procedure peek-char> #<input-port "r4rstest.scm">) ==> #\; >(#<primitive-procedure read-char> #<input-port "r4rstest.scm">) ==> #\; >(#<primitive-procedure read> #<input-port "r4rstest.scm">) ==> (define cur-section (quote ())) >(#<primitive-procedure peek-char> #<input-port "r4rstest.scm">) ==> #\( >(#<primitive-procedure read> #<input-port "r4rstest.scm">) ==> (define errs (quote ())) >SECTION(6 10 3) >(#<CLOSURE call-with-output-file "/var/tmp/portage/dev-scheme/scm-5.5.6-r3/work/scm/Init5e6.scm": (str proc) (#@call-with-open-ports (#@open-output-file #@str) #@proc)> "tmp1" #<CLOSURE <anon> "r4rstest.scm": (test-file) (write-char #\; test-file) (display #\; test-file) (display ";" test-file) (write write-test-obj test-file) (newline test-file) (write load-test-obj test-file) (output-port? test-file)>) ==> #t >(#<primitive-procedure read> #<input-port "tmp1">) ==> (define foo (quote (#t #f a () 9739 -3 . #((test) "te \" \" st" "" test #() b c)))) >(#<primitive-procedure eof-object?> #<eof>) ==> #t >(#<primitive-procedure eof-object?> #<eof>) ==> #t >(input-port? #t) ==> #t >(#<primitive-procedure read-char> #<input-port "tmp1">) ==> #\; >(#<primitive-procedure read-char> #<input-port "tmp1">) ==> #\; >(#<primitive-procedure read-char> #<input-port "tmp1">) ==> #\; >(#<primitive-procedure read> #<input-port "tmp1">) ==> (#t #f a () 9739 -3 . #((test) "te \" \" st" "" test #() b c)) >(#<primitive-procedure read> #<input-port "tmp1">) ==> (define foo (quote (#t #f a () 9739 -3 . #((test) "te \" \" st" "" test #() b c)))) >(#<primitive-procedure output-port?> #<output-port "tmp2">) ==> #t >(#<primitive-procedure read> #<input-port "tmp2">) ==> (define foo (quote (#t #f a () 9739 -3 . #((test) "te \" \" st" "" test #() b c)))) >(#<primitive-procedure eof-object?> #<eof>) ==> #t >(#<primitive-procedure eof-object?> #<eof>) ==> #t >(input-port? #t) ==> #t >(#<primitive-procedure read-char> #<input-port "tmp2">) ==> #\; >(#<primitive-procedure read-char> #<input-port "tmp2">) ==> #\; >(#<primitive-procedure read-char> #<input-port "tmp2">) ==> #\; >(#<primitive-procedure read> #<input-port "tmp2">) ==> (#t #f a () 9739 -3 . #((test) "te \" \" st" "" test #() b c)) >(#<primitive-procedure read> #<input-port "tmp2">) ==> (define foo (quote (#t #f a () 9739 -3 . #((test) "te \" \" st" "" test #() b c)))) > >Passed all tests > >To fully test continuations, Scheme 4, and DELAY/FORCE do: >(test-cont) (test-sc4) (test-delay) > >;testing scheme 4 functions; >SECTION(6 7) >(#<primitive-procedure string->list> "P l") ==> (#\P #\space #\l) >(#<primitive-procedure string->list> "") ==> () >(#<primitive-procedure list->string> (#\1 #\\ #\")) ==> "1\\\"" >(#<primitive-procedure list->string> ()) ==> "" >SECTION(6 8) >(#<primitive-procedure vector->list> #(dah dah didah)) ==> (dah dah didah) >(#<primitive-procedure vector->list> #()) ==> () >(#<primitive-procedure list->vector> (dididit dah)) ==> #(dididit dah) >(#<primitive-procedure list->vector> ()) ==> #() >SECTION(6 10 4) >(load (#t #f a () 9739 -3 . #((test) "te \" \" st" "" test #() b c))) ==> (#t #f a () 9739 -3 . #((test) "te \" \" st" "" test #() b c)) > >Passed all tests > >;testing DELAY and FORCE; >SECTION(6 9) >(delay 3) ==> 3 >(delay (3 3)) ==> (3 3) >(delay 2) ==> 2 >(#<primitive-procedure force> #<promise #<CLOSURE test-delay "r4rstest.scm": () (begin (set! count (+ count 1)) (if (> count x) count (force p)))>>) ==> 6 >(#<primitive-procedure force> #<promise 6>) ==> 6 >(force 3) ==> 3 > >Passed all tests >make[1]: Leaving directory '/var/tmp/portage/dev-scheme/scm-5.5.6-r3/work/scm' >rm -f core a.out ramap.o ramap.obj scm.o time.o repl.o scl.o sys.o eval.o subr.o unif.o rope.o continue.o findexec.o script.o debug.o scmmain.o lints >rm -rf *temp > * Building scm >; Scheme (linux) script created by SLIB/batch >; [-p linux] >; ================ Write file with C defines >(delete-file "scmflags.h") >(call-with-output-file > "scmflags.h" > (lambda (fp) > (for-each > (lambda (string) (write-line string fp)) > '("#define IMPLINIT \"/usr/lib64/scmInit5e6.scm\"" > "#define FLOATS")))) >; ================ Compile C source files >(system "gcc -c -DSUN_DL -O2 -pipe -march=native dynl.c continue.c scm.c scmmain.c findexec.c script.c time.c repl.c scl.c eval.c sys.c subr.c debug.c unif.c rope.c") >dynl.c: In function âl_dyn_main_callâ: >dynl.c:447:36: warning: passing argument 2 of âfuncâ from incompatible pointer type [-Wincompatible-pointer-types] > i = (*func) ((int)ilength(args), argv); > ^~~~ >dynl.c:447:36: note: expected âconst char **â but argument is of type âchar **â >scm.c: In function âprocess_signalsâ: >scm.c:176:17: warning: cast to pointer from integer of different size [-Wint-to-pointer-cast] > wta(UNDEFINED, (char *)i, ""); > ^ >scm.c: In function âerr_signalâ: >scm.c:259:41: warning: cast to pointer from integer of different size [-Wint-to-pointer-cast] > wta(MAKINUM(sig), (i < 0 ? s_unksig : (char *)(i + SIGNAL_BASE)), ""); > ^ >scm.c: In function âscmable_signalâ: >scm.c:290:22: warning: cast to pointer from integer of different size [-Wint-to-pointer-cast] > wta(UNDEFINED, (char *)i, ""); > ^ >scmmain.c: In function âmainâ: >scmmain.c:109:32: warning: assignment discards âconstâ qualifier from pointer target type [-Wdiscarded-qualifiers] > if (0==argc) {argc = 1; argv = generic_name;} /* for macintosh */ > ^ >scmmain.c:119:16: warning: assignment discards âconstâ qualifier from pointer target type [-Wdiscarded-qualifiers] > script_arg = argv[2]; /* Save for scm_find_execpath() call */ > ^ >scmmain.c:120:31: warning: passing argument 1 of âscript_count_argvâ from incompatible pointer type [-Wincompatible-pointer-types] > nargc = script_count_argv(nargv); > ^~~~~ >In file included from scmmain.c:30:0: >scm.h:1074:17: note: expected âconst char **â but argument is of type âchar **â > SCM_EXPORT int script_count_argv P((const char **argv)); > ^~~~~~~~~~~~~~~~~ >scmmain.c:122:15: warning: assignment from incompatible pointer type [-Wincompatible-pointer-types] > else {nargv = argv; nargc = argc;} > ^ >scmmain.c:124:39: warning: passing argument 2 of âscm_find_execpathâ from incompatible pointer type [-Wincompatible-pointer-types] > execpath = scm_find_execpath(nargc, nargv, script_arg); > ^~~~~ >In file included from scmmain.c:30:0: >scm.h:775:18: note: expected âconst char * const*â but argument is of type âchar **â > SCM_EXPORT char *scm_find_execpath P((int argc, const char * const *argv, const char *script_arg)); > ^~~~~~~~~~~~~~~~~ >scmmain.c:131:31: warning: passing argument 2 of âscm_init_from_argvâ from incompatible pointer type [-Wincompatible-pointer-types] > scm_init_from_argv(nargc, nargv, script_arg, iverbose, buf0stdin); > ^~~~~ >In file included from scmmain.c:30:0: >scm.h:768:17: note: expected âconst char * const*â but argument is of type âchar **â > SCM_EXPORT void scm_init_from_argv P((int argc, const char * const *argv, char *script_arg, > ^~~~~~~~~~~~~~~~~~ >findexec.c: In function âdld_find_executableâ: >findexec.c:163:5: warning: ignoring return value of âgetcwdâ, declared with attribute warn_unused_result [-Wunused-result] > getcwd(tbuf, MAXPATHLEN); > ^~~~~~~~~~~~~~~~~~~~~~~~ >findexec.c:194:7: warning: ignoring return value of âgetcwdâ, declared with attribute warn_unused_result [-Wunused-result] > getcwd(tbuf, MAXPATHLEN); /* was getwd(tbuf); */ > ^~~~~~~~~~~~~~~~~~~~~~~~ >script.c: In function âfind_impl_fileâ: >script.c:149:18: warning: initialization discards âconstâ qualifier from pointer target type [-Wdiscarded-qualifiers] > char *extptr = exec_path + strlen(exec_path); > ^~~~~~~~~ >script.c:165:10: warning: assignment discards âconstâ qualifier from pointer target type [-Wdiscarded-qualifiers] > extptr = exec_path + strlen(exec_path); > ^ >script.c: In function âscript_process_argvâ: >script.c:362:12: warning: assignment discards âconstâ qualifier from pointer target type [-Wdiscarded-qualifiers] > nargv[0] = argv[0]; > ^ >script.c:377:22: warning: assignment discards âconstâ qualifier from pointer target type [-Wdiscarded-qualifiers] > nargv[nargi++] = argv[argi++]; > ^ >script.c:380:39: warning: assignment discards âconstâ qualifier from pointer target type [-Wdiscarded-qualifiers] > while (argi <= argc) nargv[nargi++] = argv[argi++]; > ^ >repl.c: In function âhandle_itâ: >repl.c:1269:20: warning: cast to pointer from integer of different size [-Wint-to-pointer-cast] > wta(UNDEFINED, (char *)i, ""); /* sends it to def_err_response */ > ^ >repl.c: In function âdef_err_responseâ: >repl.c:2076:47: warning: cast from pointer to integer of different size [-Wpointer-to-int-cast] > lputc((long)err_pos <= ARGn ? ' ' : '1' + (int)err_pos - ARG1, cur_errp); > ^ >repl.c:2079:23: warning: cast from pointer to integer of different size [-Wpointer-to-int-cast] > else lputs(errmsgs[((int)err_pos)-WNA].msg, cur_errp); > ^ >repl.c: In function âeverrâ: >repl.c:2132:11: warning: assignment discards âconstâ qualifier from pointer target type [-Wdiscarded-qualifiers] > err_pos = pos; > ^ >repl.c:2133:14: warning: assignment discards âconstâ qualifier from pointer target type [-Wdiscarded-qualifiers] > err_s_subr = s_subr; > ^ >In file included from repl.c:21:0: >repl.c:2138:24: warning: cast from pointer to integer of different size [-Wpointer-to-int-cast] > COOKIE(1) : COOKIE((int)pos)); > ^ >scm.h:260:21: note: in definition of macro âCOOKIEâ > # define COOKIE(n) (n) > ^ >In file included from eval.c:21:0: >eval.c: In function âmapâ: >scm.h:1105:85: warning: cast to pointer from integer of different size [-Wint-to-pointer-cast] > _cond, _arg, _pos, _subr) if (SCM_EXPECT_FALSE(!(_cond))) wta(_arg, (char *)(_pos), _subr); > ^ >eval.c:3106:7: note: in expansion of macro âASRTERâ > ASRTER(CONSP(ve[i]), ve[i], 0==i ? ARG2 : ARGn, s_map); > ^~~~~~ >eval.c: In function âfor_eachâ: >scm.h:1105:85: warning: cast to pointer from integer of different size [-Wint-to-pointer-cast] > _cond, _arg, _pos, _subr) if (SCM_EXPECT_FALSE(!(_cond))) wta(_arg, (char *)(_pos), _subr); > ^ >eval.c:3153:7: note: in expansion of macro âASRTERâ > ASRTER(CONSP(ve[i]), ve[i], 0==i ? ARG2 : ARGn, s_for_each); > ^~~~~~ >In file included from scm.h:55:0, > from sys.c:21: >sys.c: In function âltmpnamâ: >sys.c:266:11: warning: ignoring return value of âtmpnamâ, declared with attribute warn_unused_result [-Wunused-result] > SYSCALL(tmpnam(name);); > ^~~~~~~~~~~~ >scmfig.h:794:37: note: in definition of macro âSYSCALLâ > # define SYSCALL(line) do{errno = 0;line}while(SCM_INTERRUPTED(errno)) > ^~~~ >In file included from subr.c:22:0: >subr.c: In function âlist_refâ: >scm.h:1105:85: warning: cast to pointer from integer of different size [-Wint-to-pointer-cast] > _cond, _arg, _pos, _subr) if (SCM_EXPECT_FALSE(!(_cond))) wta(_arg, (char *)(_pos), _subr); > ^ >subr.c:196:8: note: in expansion of macro âASRTERâ > erout: ASRTER(NIMP(lst) && CONSP(lst), > ^~~~~~ >; ================ Link C object files >(system "gcc -rdynamic -o scm dynl.o continue.o scm.o scmmain.o findexec.o script.o time.o repl.o scl.o eval.o sys.o subr.o debug.o unif.o rope.o -Wl,-O1 -Wl,--as-needed -L/lib64 -lm -ldl -lc") >sys.o: In function `ltmpnam': >sys.c:(.text+0x5b2): warning: the use of `tmpnam' is dangerous, better use `mkstemp' > * Building DLLs >; Scheme (linux) script created by SLIB/batch >; [-p linux] >; ================ Write file with C defines >(delete-file "scmflags.h") >(call-with-output-file > "scmflags.h" > (lambda (fp) > (for-each > (lambda (string) (write-line string fp)) > '("#define IMPLINIT \"Init5e6.scm\"" > "#define COMPILED_INITS init_edline();" > "#define DLL")))) >; ================ Compile C source files >(system "gcc -fpic -c -O2 -pipe -march=native edline.c") >(system "gcc -shared -o edline.so edline.o -lreadline -lncurses -lc") >(delete-file "edline.o") >; ================ Link C object files >(delete-file "slibcat") >; Scheme (linux) script created by SLIB/batch >; [-p linux] >; ================ Write file with C defines >(delete-file "scmflags.h") >(call-with-output-file > "scmflags.h" > (lambda (fp) > (for-each > (lambda (string) (write-line string fp)) > '("#define IMPLINIT \"Init5e6.scm\"" > "#define COMPILED_INITS init_crs();" > "#define DLL")))) >; ================ Compile C source files >(system "gcc -fpic -c -O2 -pipe -march=native crs.c") >crs.c:72:3: warning: initialization from incompatible pointer type [-Wincompatible-pointer-types] > wrefresh, > ^~~~~~~~ >crs.c:72:3: note: (near initialization for âwinptob.fflushâ) >crs.c:73:3: warning: initialization from incompatible pointer type [-Wincompatible-pointer-types] > wgetch, > ^~~~~~ >crs.c:73:3: note: (near initialization for âwinptob.fgetcâ) >crs.c: In function âlunctrlâ: >crs.c:241:17: warning: initialization discards âconstâ qualifier from pointer target type [-Wdiscarded-qualifiers] > char *str = unctrl(ICHR(c)); > ^~~~~~ >crs.c: In function âinit_crsâ: >crs.c:389:13: warning: passing argument 1 of âadd_finalâ from incompatible pointer type [-Wincompatible-pointer-types] > add_final(lendwin); > ^~~~~~~ >In file included from crs.c:21:0: >scm.h:997:17: note: expected âvoid (*)(void)â but argument is of type âSCM (*)() {aka long int (*)()}â > SCM_EXPORT void add_final P((void (*final)(void))); > ^~~~~~~~~ >(system "gcc -shared -o crs.so crs.o -lcurses -lc") >(delete-file "crs.o") >; ================ Link C object files >(delete-file "slibcat") >>>> Source compiled. >>>> Test phase: dev-scheme/scm-5.5.6-r3 >make -j1 check >./scm -fr4rstest.scm -e'(test-sc4)(test-cont)(test-delay)(gc)' \ >-e '(or (null? errs) (quit 1))' >SECTION(2 1) >SECTION(3 4) > #<primitive-procedure boolean?> > #<primitive-procedure char?> > #<primitive-procedure null?> > #<primitive-procedure number?> > #<primitive-procedure pair?> > #<primitive-procedure procedure?> > #<primitive-procedure string?> > #<primitive-procedure symbol?> > #<primitive-procedure vector?> >(#t #f #f #f #f #f #f #f #f)#t >(#t #f #f #f #f #f #f #f #f)#f >(#f #t #f #f #f #f #f #f #f)#\a >(#f #f #t #f #f #f #f #f #f)() >(#f #f #f #t #f #f #f #f #f)9739 >(#f #f #f #f #t #f #f #f #f)(test) >(#f #f #f #f #f #t #f #f #f)#<CLOSURE (e) (set! errs (cons (list cur-section e) errs))> >(#f #f #f #f #f #f #t #f #f)"test" >(#f #f #f #f #f #f #t #f #f)"" >(#f #f #f #f #f #f #f #t #f)test >(#f #f #f #f #f #f #f #f #t)#() >(#f #f #f #f #f #f #f #f #t)#(a b c) >SECTION(4 1 2) >(quote (quote a)) ==> (quote a) >(quote (quote a)) ==> (quote a) >SECTION(4 1 3) >(#<primitive-procedure *> 3 4) ==> 12 >SECTION(4 1 4) >(#<CLOSURE (x) (+ x x)> 4) ==> 8 >(#<CLOSURE (x y) (- y x)> 7 10) ==> 3 >(#<CLOSURE (y) (+ x y)> 6) ==> 10 >(#<CLOSURE x x> 3 4 5 6) ==> (3 4 5 6) >(#<CLOSURE (x y . z) z> 3 4 5 6) ==> (5 6) >SECTION(4 1 5) >(if yes) ==> yes >(if no) ==> no >(if 1) ==> 1 >SECTION(4 1 6) >(define 3) ==> 3 >(set! 5) ==> 5 >SECTION(4 2 1) >(cond greater) ==> greater >(cond equal) ==> equal >(cond 2) ==> 2 >(case composite) ==> composite >(case consonant) ==> consonant >(and #t) ==> #t >(and #f) ==> #f >(and (f g)) ==> (f g) >(and #t) ==> #t >(or #t) ==> #t >(or #t) ==> #t >(or #f) ==> #f >(or #f) ==> #f >(or (b c)) ==> (b c) >SECTION(4 2 2) >(let 6) ==> 6 >(let 35) ==> 35 >(let* 70) ==> 70 >(letrec #t) ==> #t >(let 5) ==> 5 >(let 34) ==> 34 >(let 6) ==> 6 >(let 34) ==> 34 >(let 34) ==> 34 >(let* 7) ==> 7 >(let* 34) ==> 34 >(let* 8) ==> 8 >(let* 34) ==> 34 >(letrec 9) ==> 9 >(letrec 34) ==> 34 >(letrec 10) ==> 10 >(letrec 34) ==> 34 >SECTION(4 2 3) >(begin 6) ==> 6 >SECTION(4 2 4) >(do #(0 1 2 3 4)) ==> #(0 1 2 3 4) >(do 25) ==> 25 >(do 25) ==> 25 >(let 1) ==> 1 >(let ((6 1 3) (-5 -2))) ==> ((6 1 3) (-5 -2)) >(let -1) ==> -1 >SECTION(4 2 6) >(quasiquote (list 3 4)) ==> (list 3 4) >(quasiquote (list a (quote a))) ==> (list a (quote a)) >(quasiquote (a 3 4 5 6 b)) ==> (a 3 4 5 6 b) >(quasiquote ((foo 7) . cons)) ==> ((foo 7) . cons) >(quasiquote #(10 5 2 4 3 8)) ==> #(10 5 2 4 3 8) >(quasiquote 5) ==> 5 >(quasiquote (a (quasiquote (b (unquote (+ 1 2)) (unquote (foo 4 d)) e)) f)) ==> (a (quasiquote (b (unquote (+ 1 2)) (unquote (foo 4 d)) e)) f) >(quasiquote (a (quasiquote (b (unquote x) (unquote (quote y)) d)) e)) ==> (a (quasiquote (b (unquote x) (unquote (quote y)) d)) e) >(quasiquote (list 3 4)) ==> (list 3 4) >(quasiquote (quasiquote (list (unquote (+ 1 2)) 4))) ==> (quasiquote (list (unquote (+ 1 2)) 4)) >SECTION(5 2 1) >(tprint #t) ==> #t >(define 6) ==> 6 >(define 1) ==> 1 >(define 9) ==> 9 >(define 9) ==> 9 >(define 10) ==> 10 >(#<CLOSURE (x) (#@+ #@x 3)> 6) ==> (3 6) >(#<CLOSURE (x) (#@+ #@x 3)> 6) ==> 9 >SECTION(5 2 2) >(define 45) ==> 45 >(#<CLOSURE () (#@define ((x 5)) x)>) ==> 5 >(define 34) ==> 34 >(#<CLOSURE () (#@define ((x 5)) x)>) ==> 5 >(define 34) ==> 34 >(#<CLOSURE (x) ((lambda () (define x 5) x)) x> 88) ==> 88 >(#<CLOSURE (x) (#@let () (#@define ((x 5)) #@x)) #@x> 4) ==> 4 >(define 34) ==> 34 >(internal-define 99) ==> 99 >(internal-define 77) ==> 77 >SECTION(6 1) >(#<primitive-procedure not> #t) ==> #f >(#<primitive-procedure not> 3) ==> #f >(#<primitive-procedure not> (3)) ==> #f >(#<primitive-procedure not> #f) ==> #t >(#<primitive-procedure not> ()) ==> #f >(#<primitive-procedure not> ()) ==> #f >(#<primitive-procedure not> nil) ==> #f >SECTION(6 2) >(#<primitive-procedure eqv?> a a) ==> #t >(#<primitive-procedure eqv?> a b) ==> #f >(#<primitive-procedure eqv?> 2 2) ==> #t >(#<primitive-procedure eqv?> () ()) ==> #t >(#<primitive-procedure eqv?> 10000 10000) ==> #t >(#<primitive-procedure eqv?> (1 . 2) (1 . 2)) ==> #f >(#<primitive-procedure eqv?> #<CLOSURE () 1> #<CLOSURE () 2>) ==> #f >(#<primitive-procedure eqv?> #f nil) ==> #f >(#<primitive-procedure eqv?> #<CLOSURE (x) x> #<CLOSURE (x) x>) ==> #t >(#<primitive-procedure eqv?> #<CLOSURE () (set! n (+ n 1)) n> #<CLOSURE () (set! n (+ n 1)) n>) ==> #t >(#<primitive-procedure eqv?> #<CLOSURE () (set! n (+ n 1)) n> #<CLOSURE () (set! n (+ n 1)) n>) ==> #f >(#<primitive-procedure eqv?> #<CLOSURE () (if (eqv? f g) (quote f) (quote both))> #<CLOSURE () (if (eqv? f g) (quote g) (quote both))>) ==> #f >(#<primitive-procedure eq?> a a) ==> #t >(#<primitive-procedure eq?> (a) (a)) ==> #f >(#<primitive-procedure eq?> () ()) ==> #t >(#<primitive-procedure eq?> #<primitive-procedure car> #<primitive-procedure car>) ==> #t >(#<primitive-procedure eq?> (a) (a)) ==> #t >(#<primitive-procedure eq?> #() #()) ==> #t >(#<primitive-procedure eq?> #<CLOSURE (x) x> #<CLOSURE (x) x>) ==> #t >(#<primitive-procedure equal?> a a) ==> #t >(#<primitive-procedure equal?> (a) (a)) ==> #t >(#<primitive-procedure equal?> (a (b) c) (a (b) c)) ==> #t >(#<primitive-procedure equal?> "abc" "abc") ==> #t >(#<primitive-procedure equal?> 2 2) ==> #t >(#<primitive-procedure equal?> #(a a a a a) #(a a a a a)) ==> #t >SECTION(6 3) >(dot (a b c d e)) ==> (a b c d e) >(#<primitive-procedure list?> (a b c)) ==> #t >(set-cdr! (a . 4)) ==> (a . 4) >(#<primitive-procedure eqv?> (a . 4) (a . 4)) ==> #t >(dot (a b c . d)) ==> (a b c . d) >(#<primitive-procedure list?> (a . 4)) ==> #f >(list? #f) ==> #f >(#<primitive-procedure cons> a ()) ==> (a) >(#<primitive-procedure cons> (a) (b c d)) ==> ((a) b c d) >(#<primitive-procedure cons> "a" (b c)) ==> ("a" b c) >(#<primitive-procedure cons> a 3) ==> (a . 3) >(#<primitive-procedure cons> (a b) c) ==> ((a b) . c) >(#<primitive-procedure car> (a b c)) ==> a >(#<primitive-procedure car> ((a) b c d)) ==> (a) >(#<primitive-procedure car> (1 . 2)) ==> 1 >(#<primitive-procedure cdr> ((a) b c d)) ==> (b c d) >(#<primitive-procedure cdr> (1 . 2)) ==> 2 >(#<primitive-procedure list> a 7 c) ==> (a 7 c) >(#<primitive-procedure list>) ==> () >(#<primitive-procedure length> (a b c)) ==> 3 >(#<primitive-procedure length> (a (b) (c d e))) ==> 3 >(#<primitive-procedure length> ()) ==> 0 >(#<primitive-procedure append> (x) (y)) ==> (x y) >(#<primitive-procedure append> (a) (b c d)) ==> (a b c d) >(#<primitive-procedure append> (a (b)) ((c))) ==> (a (b) (c)) >(#<primitive-procedure append>) ==> () >(#<primitive-procedure append> (a b) (c . d)) ==> (a b c . d) >(#<primitive-procedure append> () a) ==> a >(#<primitive-procedure reverse> (a b c)) ==> (c b a) >(#<primitive-procedure reverse> (a (b c) d (e (f)))) ==> ((e (f)) d (b c) a) >(#<primitive-procedure list-ref> (a b c d) 2) ==> c >(#<primitive-procedure memq> a (a b c)) ==> (a b c) >(#<primitive-procedure memq> b (a b c)) ==> (b c) >(#<primitive-procedure memq> a (b c d)) ==> #f >(#<primitive-procedure memq> (a) (b (a) c)) ==> #f >(#<primitive-procedure member> (a) (b (a) c)) ==> ((a) c) >(#<primitive-procedure memv> 101 (100 101 102)) ==> (101 102) >(#<primitive-procedure assq> a ((a 1) (b 2) (c 3))) ==> (a 1) >(#<primitive-procedure assq> b ((a 1) (b 2) (c 3))) ==> (b 2) >(#<primitive-procedure assq> d ((a 1) (b 2) (c 3))) ==> #f >(#<primitive-procedure assq> (a) (((a)) ((b)) ((c)))) ==> #f >(#<primitive-procedure assoc> (a) (((a)) ((b)) ((c)))) ==> ((a)) >(#<primitive-procedure assv> 5 ((2 3) (5 7) (11 13))) ==> (5 7) >SECTION(6 4) >(#<primitive-procedure symbol?> a) ==> #t >(standard-case #t) ==> #t >(standard-case #t) ==> #t >(#<primitive-procedure symbol->string> flying-fish) ==> "flying-fish" >(#<primitive-procedure symbol->string> martin) ==> "martin" >(#<primitive-procedure symbol->string> \Malvina) ==> "Malvina" >(standard-case #t) ==> #t >(string-set! "cb") ==> "cb" >(#<primitive-procedure symbol->string> ab) ==> "ab" >(#<primitive-procedure string->symbol> "ab") ==> ab >(#<primitive-procedure eq?> mississippi mississippi) ==> #t >(string->symbol #f) ==> #f >(#<primitive-procedure string->symbol> "jollywog") ==> jollywog >SECTION(6 5 5) >(#<primitive-procedure number?> 3) ==> #t >(#<primitive-procedure complex?> 3) ==> #t >(#<primitive-procedure real?> 3) ==> #t >(#<primitive-procedure rational?> 3) ==> #t >(#<primitive-procedure integer?> 3) ==> #t >(#<primitive-procedure exact?> 3) ==> #t >(#<primitive-procedure inexact?> 3) ==> #f >(#<CLOSURE (z1 z2) (cond ((and (exact? z2) (not (and (zero? z1) (negative? z2)))) (integer-expt z1 z2)) ((zero? z2) (+ 1 (* z1 z2))) ((and (real? z2) (real? z1) (positive? z1)) (real-expt z1 z2)) (else (exp (* (if (zero? z1) (real-part z2) z2) (log z1)))))> 0 0) ==> 1 >(#<CLOSURE (z1 z2) (#@cond ((#@and (#@exact? #@z2) (#@not (#@and (#@zero? #@z1) (#@negative? #@z2)))) (#@integer-expt #@z1 #@z2)) ((zero? z2) (+ 1 (* z1 z2))) ((and (real? z2) (real? z1) (positive? z1)) (real-expt z1 z2)) (#t (exp (* (if (zero? z1) (real-part z2) z2) (log z1)))))> 0 1) ==> 0 >(#<CLOSURE (z1 z2) (#@cond ((#@and (#@exact? #@z2) (#@not (#@and (#@zero? #@z1) (#@negative? #@z2)))) (#@integer-expt #@z1 #@z2)) ((zero? z2) (+ 1 (* z1 z2))) ((and (real? z2) (real? z1) (positive? z1)) (real-expt z1 z2)) (#t (exp (* (if (zero? z1) (real-part z2) z2) (log z1)))))> 0 256) ==> 0 >(#<CLOSURE (z1 z2) (#@cond ((#@and (#@exact? #@z2) (#@not (#@and (#@zero? #@z1) (#@negative? #@z2)))) (#@integer-expt #@z1 #@z2)) ((zero? z2) (+ 1 (* z1 z2))) ((and (real? z2) (real? z1) (positive? z1)) (real-expt z1 z2)) (#t (exp (* (if (zero? z1) (real-part z2) z2) (log z1)))))> -1 256) ==> 1 >(#<CLOSURE (z1 z2) (#@cond ((#@and (#@exact? #@z2) (#@not (#@and (#@zero? #@z1) (#@negative? #@z2)))) (#@integer-expt #@z1 #@z2)) ((zero? z2) (+ 1 (* z1 z2))) ((and (real? z2) (real? z1) (positive? z1)) (real-expt z1 z2)) (#t (exp (* (if (zero? z1) (real-part z2) z2) (log z1)))))> -1 255) ==> -1 >(#<CLOSURE (z1 z2) (#@cond ((#@and (#@exact? #@z2) (#@not (#@and (#@zero? #@z1) (#@negative? #@z2)))) (#@integer-expt #@z1 #@z2)) ((zero? z2) (+ 1 (* z1 z2))) ((and (real? z2) (real? z1) (positive? z1)) (real-expt z1 z2)) (#t (exp (* (if (zero? z1) (real-part z2) z2) (log z1)))))> -1 -256) ==> 1 >(#<CLOSURE (z1 z2) (#@cond ((#@and (#@exact? #@z2) (#@not (#@and (#@zero? #@z1) (#@negative? #@z2)))) (#@integer-expt #@z1 #@z2)) ((zero? z2) (+ 1 (* z1 z2))) ((and (real? z2) (real? z1) (positive? z1)) (real-expt z1 z2)) (#t (exp (* (if (zero? z1) (real-part z2) z2) (log z1)))))> -1 -255) ==> -1 >(#<CLOSURE (z1 z2) (#@cond ((#@and (#@exact? #@z2) (#@not (#@and (#@zero? #@z1) (#@negative? #@z2)))) (#@integer-expt #@z1 #@z2)) ((zero? z2) (+ 1 (* z1 z2))) ((and (real? z2) (real? z1) (positive? z1)) (real-expt z1 z2)) (#t (exp (* (if (zero? z1) (real-part z2) z2) (log z1)))))> 256 0) ==> 1 >(#<CLOSURE (z1 z2) (#@cond ((#@and (#@exact? #@z2) (#@not (#@and (#@zero? #@z1) (#@negative? #@z2)))) (#@integer-expt #@z1 #@z2)) ((zero? z2) (+ 1 (* z1 z2))) ((and (real? z2) (real? z1) (positive? z1)) (real-expt z1 z2)) (#t (exp (* (if (zero? z1) (real-part z2) z2) (log z1)))))> -256 0) ==> 1 >(#<CLOSURE (z1 z2) (#@cond ((#@and (#@exact? #@z2) (#@not (#@and (#@zero? #@z1) (#@negative? #@z2)))) (#@integer-expt #@z1 #@z2)) ((zero? z2) (+ 1 (* z1 z2))) ((and (real? z2) (real? z1) (positive? z1)) (real-expt z1 z2)) (#t (exp (* (if (zero? z1) (real-part z2) z2) (log z1)))))> 256 1) ==> 256 >(#<CLOSURE (z1 z2) (#@cond ((#@and (#@exact? #@z2) (#@not (#@and (#@zero? #@z1) (#@negative? #@z2)))) (#@integer-expt #@z1 #@z2)) ((zero? z2) (+ 1 (* z1 z2))) ((and (real? z2) (real? z1) (positive? z1)) (real-expt z1 z2)) (#t (exp (* (if (zero? z1) (real-part z2) z2) (log z1)))))> -256 1) ==> -256 >(#<CLOSURE (z1 z2) (#@cond ((#@and (#@exact? #@z2) (#@not (#@and (#@zero? #@z1) (#@negative? #@z2)))) (#@integer-expt #@z1 #@z2)) ((zero? z2) (+ 1 (* z1 z2))) ((and (real? z2) (real? z1) (positive? z1)) (real-expt z1 z2)) (#t (exp (* (if (zero? z1) (real-part z2) z2) (log z1)))))> 2 3) ==> 8 >(#<CLOSURE (z1 z2) (#@cond ((#@and (#@exact? #@z2) (#@not (#@and (#@zero? #@z1) (#@negative? #@z2)))) (#@integer-expt #@z1 #@z2)) ((zero? z2) (+ 1 (* z1 z2))) ((and (real? z2) (real? z1) (positive? z1)) (real-expt z1 z2)) (#t (exp (* (if (zero? z1) (real-part z2) z2) (log z1)))))> -2 3) ==> -8 >(#<CLOSURE (z1 z2) (#@cond ((#@and (#@exact? #@z2) (#@not (#@and (#@zero? #@z1) (#@negative? #@z2)))) (#@integer-expt #@z1 #@z2)) ((zero? z2) (+ 1 (* z1 z2))) ((and (real? z2) (real? z1) (positive? z1)) (real-expt z1 z2)) (#t (exp (* (if (zero? z1) (real-part z2) z2) (log z1)))))> 3 2) ==> 9 >(#<CLOSURE (z1 z2) (#@cond ((#@and (#@exact? #@z2) (#@not (#@and (#@zero? #@z1) (#@negative? #@z2)))) (#@integer-expt #@z1 #@z2)) ((zero? z2) (+ 1 (* z1 z2))) ((and (real? z2) (real? z1) (positive? z1)) (real-expt z1 z2)) (#t (exp (* (if (zero? z1) (real-part z2) z2) (log z1)))))> -3 2) ==> 9 >(#<primitive-procedure => 22 22 22) ==> #t >(#<primitive-procedure => 22 22) ==> #t >(#<primitive-procedure => 34 34 35) ==> #f >(#<primitive-procedure => 34 35) ==> #f >(#<primitive-procedure >> 3 -6246) ==> #t >(#<primitive-procedure >> 9 9 -2424) ==> #f >(#<primitive-procedure >=> 3 -4 -6246) ==> #t >(#<primitive-procedure >=> 9 9) ==> #t >(#<primitive-procedure >=> 8 9) ==> #f >(#<primitive-procedure <> -1 2 3 4 5 6 7 8) ==> #t >(#<primitive-procedure <> -1 2 3 4 4 5 6 7) ==> #f >(#<primitive-procedure <=> -1 2 3 4 5 6 7 8) ==> #t >(#<primitive-procedure <=> -1 2 3 4 4 5 6 7) ==> #t >(#<primitive-procedure <> 1 3 2) ==> #f >(#<primitive-procedure >=> 1 3 2) ==> #f >(#<primitive-procedure zero?> 0) ==> #t >(#<primitive-procedure zero?> 1) ==> #f >(#<primitive-procedure zero?> -1) ==> #f >(#<primitive-procedure zero?> -100) ==> #f >(#<primitive-procedure positive?> 4) ==> #t >(#<primitive-procedure positive?> -4) ==> #f >(#<primitive-procedure positive?> 0) ==> #f >(#<primitive-procedure negative?> 4) ==> #f >(#<primitive-procedure negative?> -4) ==> #t >(#<primitive-procedure negative?> 0) ==> #f >(#<primitive-procedure odd?> 3) ==> #t >(#<primitive-procedure odd?> 2) ==> #f >(#<primitive-procedure odd?> -4) ==> #f >(#<primitive-procedure odd?> -1) ==> #t >(#<primitive-procedure even?> 3) ==> #f >(#<primitive-procedure even?> 2) ==> #t >(#<primitive-procedure even?> -4) ==> #t >(#<primitive-procedure even?> -1) ==> #f >(#<primitive-procedure max> 34 5 7 38 6) ==> 38 >(#<primitive-procedure min> 3 5 5 330 4 -24) ==> -24 >(#<primitive-procedure +> 3 4) ==> 7 >(#<primitive-procedure +> 3) ==> 3 >(#<primitive-procedure +>) ==> 0 >(#<primitive-procedure *> 4) ==> 4 >(#<primitive-procedure *>) ==> 1 >(#<primitive-procedure /> 1) ==> 1 >(#<primitive-procedure /> -1) ==> -1 >(#<primitive-procedure /> 6 3) ==> 2 >(#<primitive-procedure /> 6 -2) ==> -3 >(#<primitive-procedure /> -6 2) ==> -3 >(#<primitive-procedure /> -6 -2) ==> 3 >(#<primitive-procedure -> 3 4) ==> -1 >(#<primitive-procedure -> 3) ==> -3 >(#<primitive-procedure abs> -7) ==> 7 >(#<primitive-procedure abs> 7) ==> 7 >(#<primitive-procedure abs> 0) ==> 0 >(#<primitive-procedure quotient> 35 7) ==> 5 >(#<primitive-procedure quotient> -35 7) ==> -5 >(#<primitive-procedure quotient> 35 -7) ==> -5 >(#<primitive-procedure quotient> -35 -7) ==> 5 >(#<primitive-procedure modulo> 13 4) ==> 1 >(#<primitive-procedure remainder> 13 4) ==> 1 >(#<primitive-procedure modulo> -13 4) ==> 3 >(#<primitive-procedure remainder> -13 4) ==> -1 >(#<primitive-procedure modulo> 13 -4) ==> -3 >(#<primitive-procedure remainder> 13 -4) ==> 1 >(#<primitive-procedure modulo> -13 -4) ==> -1 >(#<primitive-procedure remainder> -13 -4) ==> -1 >(#<primitive-procedure modulo> 0 86400) ==> 0 >(#<primitive-procedure modulo> 0 -86400) ==> 0 >(#<CLOSURE (n1 n2) (= n1 (+ (* n2 (quotient n1 n2)) (remainder n1 n2)))> 238 9) ==> #t >(#<CLOSURE (n1 n2) (#@= #@n1 (#@+ (#@* #@n2 (#@quotient #@n1 #@n2)) (#@remainder #@n1 #@n2)))> -238 9) ==> #t >(#<CLOSURE (n1 n2) (#@= #@n1 (#@+ (#@* #@n2 (#@quotient #@n1 #@n2)) (#@remainder #@n1 #@n2)))> 238 -9) ==> #t >(#<CLOSURE (n1 n2) (#@= #@n1 (#@+ (#@* #@n2 (#@quotient #@n1 #@n2)) (#@remainder #@n1 #@n2)))> -238 -9) ==> #t >(#<primitive-procedure gcd> 0 4) ==> 4 >(#<primitive-procedure gcd> -4 0) ==> 4 >(#<primitive-procedure gcd> 32 -36) ==> 4 >(#<primitive-procedure gcd>) ==> 0 >(#<primitive-procedure lcm> 32 -36) ==> 288 >(#<primitive-procedure lcm>) ==> 1 >SECTION(6 5 5) >(#<CLOSURE (str) (#@define ((ans (string->number str))) (cond ((not ans) #t) ((number? ans) #t) (else ans)))> "+#.#") ==> #t >(#<CLOSURE (str) (#@define ((ans (#@string->number #@str))) (#@cond ((#@not #@ans) #t) ((number? ans) #t) (#t ans)))> "-#.#") ==> #t >(#<CLOSURE (str) (#@define ((ans (#@string->number #@str))) (#@cond ((#@not #@ans) #t) ((number? ans) #t) (#t ans)))> "#.#") ==> #t >(#<CLOSURE (str) (#@define ((ans (#@string->number #@str))) (#@cond ((#@not #@ans) #t) ((number? ans) #t) (#t ans)))> "1/0") ==> #t >(#<CLOSURE (str) (#@define ((ans (#@string->number #@str))) (#@cond ((#@not #@ans) #t) ((#@number? #@ans) #t) (#t ans)))> "-1/0") ==> #t >(#<CLOSURE (str) (#@define ((ans (#@string->number #@str))) (#@cond ((#@not #@ans) #t) ((#@number? #@ans) #t) (#t ans)))> "0/0") ==> #t >(#<CLOSURE (str) (#@define ((ans (#@string->number #@str))) (#@cond ((#@not #@ans) #t) ((#@number? #@ans) #t) (#t ans)))> "+1/0i") ==> #t >(#<CLOSURE (str) (#@define ((ans (#@string->number #@str))) (#@cond ((#@not #@ans) #t) ((#@number? #@ans) #t) (#t ans)))> "-1/0i") ==> #t >(#<CLOSURE (str) (#@define ((ans (#@string->number #@str))) (#@cond ((#@not #@ans) #t) ((#@number? #@ans) #t) (#t ans)))> "0/0i") ==> #t >(#<CLOSURE (str) (#@define ((ans (#@string->number #@str))) (#@cond ((#@not #@ans) #t) ((#@number? #@ans) #t) (#t ans)))> "0/0-0/0i") ==> #t >(#<CLOSURE (str) (#@define ((ans (#@string->number #@str))) (#@cond ((#@not #@ans) #t) ((#@number? #@ans) #t) (#t ans)))> "1/0-1/0i") ==> #t >(#<CLOSURE (str) (#@define ((ans (#@string->number #@str))) (#@cond ((#@not #@ans) #t) ((#@number? #@ans) #t) (#t ans)))> "-1/0+1/0i") ==> #t >(#<CLOSURE (str) (#@define ((ans (#@string->number #@str))) (#@cond ((#@not #@ans) #t) ((#@number? #@ans) #t) (#t ans)))> "#i") ==> #t >(#<CLOSURE (str) (#@define ((ans (#@string->number #@str))) (#@cond ((#@not #@ans) #t) ((#@number? #@ans) #t) (#t ans)))> "#e") ==> #t >(#<CLOSURE (str) (#@define ((ans (#@string->number #@str))) (#@cond ((#@not #@ans) #t) ((#@number? #@ans) #t) (#t ans)))> "#") ==> #t >(#<CLOSURE (str) (#@define ((ans (#@string->number #@str))) (#@cond ((#@not #@ans) #t) ((#@number? #@ans) #t) (#t ans)))> "#i0/0") ==> #t >(#<primitive-procedure number?> 0.0-1.0i) ==> #t >(#<primitive-procedure number?> 0.0+1.0i) ==> #t >(#<primitive-procedure number?> 2.0+1.0i) ==> #t >SECTION(6 5 9) >(#<primitive-procedure number->string> 0) ==> "0" >(#<primitive-procedure number->string> 100) ==> "100" >(#<primitive-procedure number->string> 256 16) ==> "100" >(#<primitive-procedure string->number> "100") ==> 100 >(#<primitive-procedure string->number> "100" 16) ==> 256 >(#<primitive-procedure string->number> "") ==> #f >(#<primitive-procedure string->number> ".") ==> #f >(#<primitive-procedure string->number> "d") ==> #f >(#<primitive-procedure string->number> "D") ==> #f >(#<primitive-procedure string->number> "i") ==> #f >(#<primitive-procedure string->number> "I") ==> #f >(#<primitive-procedure string->number> "3i") ==> #f >(#<primitive-procedure string->number> "3I") ==> #f >(#<primitive-procedure string->number> "33i") ==> #f >(#<primitive-procedure string->number> "33I") ==> #f >(#<primitive-procedure string->number> "3.3i") ==> #f >(#<primitive-procedure string->number> "3.3I") ==> #f >(#<primitive-procedure string->number> "-") ==> #f >(#<primitive-procedure string->number> "+") ==> #f >(string->number #t) ==> #t >(string->number #t) ==> #t >SECTION(6 6) >(#<primitive-procedure eqv?> #\space #\space) ==> #t >(#<primitive-procedure eqv?> #\space #\space) ==> #t >(#<primitive-procedure char?> #\a) ==> #t >(#<primitive-procedure char?> #\() ==> #t >(#<primitive-procedure char?> #\space) ==> #t >(#<primitive-procedure char?> #\nl) ==> #t >(#<primitive-procedure char=?> #\A #\B) ==> #f >(#<primitive-procedure char=?> #\a #\b) ==> #f >(#<primitive-procedure char=?> #\9 #\0) ==> #f >(#<primitive-procedure char=?> #\A #\A) ==> #t >(#<primitive-procedure char<?> #\A #\B) ==> #t >(#<primitive-procedure char<?> #\a #\b) ==> #t >(#<primitive-procedure char<?> #\9 #\0) ==> #f >(#<primitive-procedure char<?> #\A #\A) ==> #f >(#<primitive-procedure char>?> #\A #\B) ==> #f >(#<primitive-procedure char>?> #\a #\b) ==> #f >(#<primitive-procedure char>?> #\9 #\0) ==> #t >(#<primitive-procedure char>?> #\A #\A) ==> #f >(#<primitive-procedure char<=?> #\A #\B) ==> #t >(#<primitive-procedure char<=?> #\a #\b) ==> #t >(#<primitive-procedure char<=?> #\9 #\0) ==> #f >(#<primitive-procedure char<=?> #\A #\A) ==> #t >(#<primitive-procedure char>=?> #\A #\B) ==> #f >(#<primitive-procedure char>=?> #\a #\b) ==> #f >(#<primitive-procedure char>=?> #\9 #\0) ==> #t >(#<primitive-procedure char>=?> #\A #\A) ==> #t >(#<primitive-procedure char-ci=?> #\A #\B) ==> #f >(#<primitive-procedure char-ci=?> #\a #\B) ==> #f >(#<primitive-procedure char-ci=?> #\A #\b) ==> #f >(#<primitive-procedure char-ci=?> #\a #\b) ==> #f >(#<primitive-procedure char-ci=?> #\9 #\0) ==> #f >(#<primitive-procedure char-ci=?> #\A #\A) ==> #t >(#<primitive-procedure char-ci=?> #\A #\a) ==> #t >(#<primitive-procedure char-ci<?> #\A #\B) ==> #t >(#<primitive-procedure char-ci<?> #\a #\B) ==> #t >(#<primitive-procedure char-ci<?> #\A #\b) ==> #t >(#<primitive-procedure char-ci<?> #\a #\b) ==> #t >(#<primitive-procedure char-ci<?> #\9 #\0) ==> #f >(#<primitive-procedure char-ci<?> #\A #\A) ==> #f >(#<primitive-procedure char-ci<?> #\A #\a) ==> #f >(#<primitive-procedure char-ci>?> #\A #\B) ==> #f >(#<primitive-procedure char-ci>?> #\a #\B) ==> #f >(#<primitive-procedure char-ci>?> #\A #\b) ==> #f >(#<primitive-procedure char-ci>?> #\a #\b) ==> #f >(#<primitive-procedure char-ci>?> #\9 #\0) ==> #t >(#<primitive-procedure char-ci>?> #\A #\A) ==> #f >(#<primitive-procedure char-ci>?> #\A #\a) ==> #f >(#<primitive-procedure char-ci<=?> #\A #\B) ==> #t >(#<primitive-procedure char-ci<=?> #\a #\B) ==> #t >(#<primitive-procedure char-ci<=?> #\A #\b) ==> #t >(#<primitive-procedure char-ci<=?> #\a #\b) ==> #t >(#<primitive-procedure char-ci<=?> #\9 #\0) ==> #f >(#<primitive-procedure char-ci<=?> #\A #\A) ==> #t >(#<primitive-procedure char-ci<=?> #\A #\a) ==> #t >(#<primitive-procedure char-ci>=?> #\A #\B) ==> #f >(#<primitive-procedure char-ci>=?> #\a #\B) ==> #f >(#<primitive-procedure char-ci>=?> #\A #\b) ==> #f >(#<primitive-procedure char-ci>=?> #\a #\b) ==> #f >(#<primitive-procedure char-ci>=?> #\9 #\0) ==> #t >(#<primitive-procedure char-ci>=?> #\A #\A) ==> #t >(#<primitive-procedure char-ci>=?> #\A #\a) ==> #t >(#<primitive-procedure char-alphabetic?> #\a) ==> #t >(#<primitive-procedure char-alphabetic?> #\A) ==> #t >(#<primitive-procedure char-alphabetic?> #\z) ==> #t >(#<primitive-procedure char-alphabetic?> #\Z) ==> #t >(#<primitive-procedure char-alphabetic?> #\0) ==> #f >(#<primitive-procedure char-alphabetic?> #\9) ==> #f >(#<primitive-procedure char-alphabetic?> #\space) ==> #f >(#<primitive-procedure char-alphabetic?> #\;) ==> #f >(#<primitive-procedure char-numeric?> #\a) ==> #f >(#<primitive-procedure char-numeric?> #\A) ==> #f >(#<primitive-procedure char-numeric?> #\z) ==> #f >(#<primitive-procedure char-numeric?> #\Z) ==> #f >(#<primitive-procedure char-numeric?> #\0) ==> #t >(#<primitive-procedure char-numeric?> #\9) ==> #t >(#<primitive-procedure char-numeric?> #\space) ==> #f >(#<primitive-procedure char-numeric?> #\;) ==> #f >(#<primitive-procedure char-whitespace?> #\a) ==> #f >(#<primitive-procedure char-whitespace?> #\A) ==> #f >(#<primitive-procedure char-whitespace?> #\z) ==> #f >(#<primitive-procedure char-whitespace?> #\Z) ==> #f >(#<primitive-procedure char-whitespace?> #\0) ==> #f >(#<primitive-procedure char-whitespace?> #\9) ==> #f >(#<primitive-procedure char-whitespace?> #\space) ==> #t >(#<primitive-procedure char-whitespace?> #\;) ==> #f >(#<primitive-procedure char-upper-case?> #\0) ==> #f >(#<primitive-procedure char-upper-case?> #\9) ==> #f >(#<primitive-procedure char-upper-case?> #\space) ==> #f >(#<primitive-procedure char-upper-case?> #\;) ==> #f >(#<primitive-procedure char-lower-case?> #\0) ==> #f >(#<primitive-procedure char-lower-case?> #\9) ==> #f >(#<primitive-procedure char-lower-case?> #\space) ==> #f >(#<primitive-procedure char-lower-case?> #\;) ==> #f >(#<primitive-procedure integer->char> 46) ==> #\. >(#<primitive-procedure integer->char> 65) ==> #\A >(#<primitive-procedure integer->char> 97) ==> #\a >(#<primitive-procedure char-upcase> #\A) ==> #\A >(#<primitive-procedure char-upcase> #\a) ==> #\A >(#<primitive-procedure char-downcase> #\A) ==> #\a >(#<primitive-procedure char-downcase> #\a) ==> #\a >SECTION(6 7) >(#<primitive-procedure string?> "The word \"recursion\\\" has many meanings.") ==> #t >(string-set! "?**") ==> "?**" >(#<primitive-procedure string> #\a #\b #\c) ==> "abc" >(#<primitive-procedure string>) ==> "" >(#<primitive-procedure string-length> "abc") ==> 3 >(#<primitive-procedure string-ref> "abc" 0) ==> #\a >(#<primitive-procedure string-ref> "abc" 2) ==> #\c >(#<primitive-procedure string-length> "") ==> 0 >(#<primitive-procedure substring> "ab" 0 0) ==> "" >(#<primitive-procedure substring> "ab" 1 1) ==> "" >(#<primitive-procedure substring> "ab" 2 2) ==> "" >(#<primitive-procedure substring> "ab" 0 1) ==> "a" >(#<primitive-procedure substring> "ab" 1 2) ==> "b" >(#<primitive-procedure substring> "ab" 0 2) ==> "ab" >(#<primitive-procedure string-append> "foo" "bar") ==> "foobar" >(#<primitive-procedure string-append> "foo") ==> "foo" >(#<primitive-procedure string-append> "foo" "") ==> "foo" >(#<primitive-procedure string-append> "" "foo") ==> "foo" >(#<primitive-procedure string-append>) ==> "" >(#<primitive-procedure make-string> 0) ==> "" >(#<primitive-procedure string=?> "" "") ==> #t >(#<primitive-procedure string<?> "" "") ==> #f >(#<primitive-procedure string>?> "" "") ==> #f >(#<primitive-procedure string<=?> "" "") ==> #t >(#<primitive-procedure string>=?> "" "") ==> #t >(#<primitive-procedure string-ci=?> "" "") ==> #t >(#<primitive-procedure string-ci<?> "" "") ==> #f >(#<primitive-procedure string-ci>?> "" "") ==> #f >(#<primitive-procedure string-ci<=?> "" "") ==> #t >(#<primitive-procedure string-ci>=?> "" "") ==> #t >(#<primitive-procedure string=?> "A" "B") ==> #f >(#<primitive-procedure string=?> "a" "b") ==> #f >(#<primitive-procedure string=?> "9" "0") ==> #f >(#<primitive-procedure string=?> "A" "A") ==> #t >(#<primitive-procedure string<?> "A" "B") ==> #t >(#<primitive-procedure string<?> "a" "b") ==> #t >(#<primitive-procedure string<?> "9" "0") ==> #f >(#<primitive-procedure string<?> "A" "A") ==> #f >(#<primitive-procedure string>?> "A" "B") ==> #f >(#<primitive-procedure string>?> "a" "b") ==> #f >(#<primitive-procedure string>?> "9" "0") ==> #t >(#<primitive-procedure string>?> "A" "A") ==> #f >(#<primitive-procedure string<=?> "A" "B") ==> #t >(#<primitive-procedure string<=?> "a" "b") ==> #t >(#<primitive-procedure string<=?> "9" "0") ==> #f >(#<primitive-procedure string<=?> "A" "A") ==> #t >(#<primitive-procedure string>=?> "A" "B") ==> #f >(#<primitive-procedure string>=?> "a" "b") ==> #f >(#<primitive-procedure string>=?> "9" "0") ==> #t >(#<primitive-procedure string>=?> "A" "A") ==> #t >(#<primitive-procedure string-ci=?> "A" "B") ==> #f >(#<primitive-procedure string-ci=?> "a" "B") ==> #f >(#<primitive-procedure string-ci=?> "A" "b") ==> #f >(#<primitive-procedure string-ci=?> "a" "b") ==> #f >(#<primitive-procedure string-ci=?> "9" "0") ==> #f >(#<primitive-procedure string-ci=?> "A" "A") ==> #t >(#<primitive-procedure string-ci=?> "A" "a") ==> #t >(#<primitive-procedure string-ci<?> "A" "B") ==> #t >(#<primitive-procedure string-ci<?> "a" "B") ==> #t >(#<primitive-procedure string-ci<?> "A" "b") ==> #t >(#<primitive-procedure string-ci<?> "a" "b") ==> #t >(#<primitive-procedure string-ci<?> "9" "0") ==> #f >(#<primitive-procedure string-ci<?> "A" "A") ==> #f >(#<primitive-procedure string-ci<?> "A" "a") ==> #f >(#<primitive-procedure string-ci>?> "A" "B") ==> #f >(#<primitive-procedure string-ci>?> "a" "B") ==> #f >(#<primitive-procedure string-ci>?> "A" "b") ==> #f >(#<primitive-procedure string-ci>?> "a" "b") ==> #f >(#<primitive-procedure string-ci>?> "9" "0") ==> #t >(#<primitive-procedure string-ci>?> "A" "A") ==> #f >(#<primitive-procedure string-ci>?> "A" "a") ==> #f >(#<primitive-procedure string-ci<=?> "A" "B") ==> #t >(#<primitive-procedure string-ci<=?> "a" "B") ==> #t >(#<primitive-procedure string-ci<=?> "A" "b") ==> #t >(#<primitive-procedure string-ci<=?> "a" "b") ==> #t >(#<primitive-procedure string-ci<=?> "9" "0") ==> #f >(#<primitive-procedure string-ci<=?> "A" "A") ==> #t >(#<primitive-procedure string-ci<=?> "A" "a") ==> #t >(#<primitive-procedure string-ci>=?> "A" "B") ==> #f >(#<primitive-procedure string-ci>=?> "a" "B") ==> #f >(#<primitive-procedure string-ci>=?> "A" "b") ==> #f >(#<primitive-procedure string-ci>=?> "a" "b") ==> #f >(#<primitive-procedure string-ci>=?> "9" "0") ==> #t >(#<primitive-procedure string-ci>=?> "A" "A") ==> #t >(#<primitive-procedure string-ci>=?> "A" "a") ==> #t >SECTION(6 8) >(#<primitive-procedure vector?> #(0 (2 2 2 2) "Anna")) ==> #t >(#<primitive-procedure vector> a b c) ==> #(a b c) >(#<primitive-procedure vector>) ==> #() >(#<primitive-procedure vector-length> #(0 (2 2 2 2) "Anna")) ==> 3 >(#<primitive-procedure vector-length> #()) ==> 0 >(#<primitive-procedure vector-ref> #(1 1 2 3 5 8 13 21) 5) ==> 8 >(vector-set #(0 ("Sue" "Sue") "Anna")) ==> #(0 ("Sue" "Sue") "Anna") >(#<primitive-procedure make-vector> 2 hi) ==> #(hi hi) >(#<primitive-procedure make-vector> 0) ==> #() >(#<primitive-procedure make-vector> 0 a) ==> #() >SECTION(6 9) >(#<primitive-procedure procedure?> #<primitive-procedure car>) ==> #t >(#<primitive-procedure procedure?> car) ==> #f >(#<primitive-procedure procedure?> #<CLOSURE (x) (* x x)>) ==> #t >(#<primitive-procedure procedure?> (lambda (x) (* x x))) ==> #f >(#<primitive-procedure call-with-current-continuation> #<primitive-procedure procedure?>) ==> #t >(#<primitive-procedure procedure?> #<primitive-procedure />) ==> #t >(#<primitive-procedure apply> #<primitive-procedure +> (3 4)) ==> 7 >(#<primitive-procedure apply> #<CLOSURE (a b) (+ a b)> (3 4)) ==> 7 >(#<primitive-procedure apply> #<primitive-procedure +> 10 (3 4)) ==> 17 >(#<primitive-procedure apply> #<primitive-procedure list> ()) ==> () >(#<CLOSURE args (f (apply g args))> 12 75) ==> 30 >(#<primitive-procedure map> #<primitive-procedure cadr> ((a b) (d e) (g h))) ==> (b e h) >(#<primitive-procedure map> #<primitive-procedure +> (1 2 3) (4 5 6)) ==> (5 7 9) >(#<primitive-procedure map> #<primitive-procedure +> (1 2 3)) ==> (1 2 3) >(#<primitive-procedure map> #<primitive-procedure *> (1 2 3)) ==> (1 2 3) >(#<primitive-procedure map> #<primitive-procedure -> (1 2 3)) ==> (-1 -2 -3) >(for-each #(0 1 4 9 16)) ==> #(0 1 4 9 16) >(#<primitive-procedure call-with-current-continuation> #<CLOSURE (exit) (for-each (lambda (x) (if (negative? x) (exit x))) (quote (54 0 37 -3 245 19))) #t>) ==> -3 >(#<CLOSURE (obj) (call-with-current-continuation (lambda (return) (letrec ((r (lambda (obj) (cond ((null? obj) 0) ((pair? obj) (+ (r (cdr obj)) 1)) (else (return #f)))))) (r obj))))> (1 2 3 4)) ==> 4 >(#<CLOSURE (obj) (#@call-with-current-continuation (#@lambda (return) (#@letrec ((r (#@lambda (obj) (#@cond ((#@null? #@obj) 0) ((#@pair? #@obj) (#@+ (#@r (#@cdr #@obj)) 1)) (#t (return #f)))))) (#@r #@obj))))> (a b . c)) ==> #f >(#<primitive-procedure map> #<primitive-procedure cadr> ()) ==> () >SECTION(6 10 1) >(#<primitive-procedure input-port?> #<input-port 0>) ==> #t >(#<primitive-procedure output-port?> #<output-port /dev/pts/5>) ==> #t >(#<CLOSURE (str proc) (#@call-with-open-ports (#@open-input-file #@str) #@proc)> "r4rstest.scm" #<primitive-procedure input-port?>) ==> #t >(#<primitive-procedure input-port?> #<input-port "r4rstest.scm">) ==> #t >SECTION(6 10 2) >(#<primitive-procedure peek-char> #<input-port "r4rstest.scm">) ==> #\; >(#<primitive-procedure read-char> #<input-port "r4rstest.scm">) ==> #\; >(#<primitive-procedure read> #<input-port "r4rstest.scm">) ==> (define cur-section (quote ())) >(#<primitive-procedure peek-char> #<input-port "r4rstest.scm">) ==> #\( >(#<primitive-procedure read> #<input-port "r4rstest.scm">) ==> (define errs (quote ())) >SECTION(6 10 3) >(#<CLOSURE (str proc) (#@call-with-open-ports (#@open-output-file #@str) #@proc)> "tmp1" #<CLOSURE (test-file) (write-char #\; test-file) (display #\; test-file) (display ";" test-file) (write write-test-obj test-file) (newline test-file) (write load-test-obj test-file) (output-port? test-file)>) ==> #t >(#<primitive-procedure read> #<input-port "tmp1">) ==> (define foo (quote (#t #f a () 9739 -3 . #((test) "te \" \" st" "" test #() b c)))) >(#<primitive-procedure eof-object?> #<eof>) ==> #t >(#<primitive-procedure eof-object?> #<eof>) ==> #t >(input-port? #t) ==> #t >(#<primitive-procedure read-char> #<input-port "tmp1">) ==> #\; >(#<primitive-procedure read-char> #<input-port "tmp1">) ==> #\; >(#<primitive-procedure read-char> #<input-port "tmp1">) ==> #\; >(#<primitive-procedure read> #<input-port "tmp1">) ==> (#t #f a () 9739 -3 . #((test) "te \" \" st" "" test #() b c)) >(#<primitive-procedure read> #<input-port "tmp1">) ==> (define foo (quote (#t #f a () 9739 -3 . #((test) "te \" \" st" "" test #() b c)))) >(#<primitive-procedure output-port?> #<output-port "tmp2">) ==> #t >(#<primitive-procedure read> #<input-port "tmp2">) ==> (define foo (quote (#t #f a () 9739 -3 . #((test) "te \" \" st" "" test #() b c)))) >(#<primitive-procedure eof-object?> #<eof>) ==> #t >(#<primitive-procedure eof-object?> #<eof>) ==> #t >(input-port? #t) ==> #t >(#<primitive-procedure read-char> #<input-port "tmp2">) ==> #\; >(#<primitive-procedure read-char> #<input-port "tmp2">) ==> #\; >(#<primitive-procedure read-char> #<input-port "tmp2">) ==> #\; >(#<primitive-procedure read> #<input-port "tmp2">) ==> (#t #f a () 9739 -3 . #((test) "te \" \" st" "" test #() b c)) >(#<primitive-procedure read> #<input-port "tmp2">) ==> (define foo (quote (#t #f a () 9739 -3 . #((test) "te \" \" st" "" test #() b c)))) > >Passed all tests > >;testing inexact numbers; >SECTION(6 2) >(#<primitive-procedure eqv?> 1 1.0) ==> #f >(#<primitive-procedure eqv?> 0 0.0) ==> #f >(#<primitive-procedure eqv?> 0.0 0.0) ==> #t >(#<primitive-procedure eqv?> 0.0 0.0) ==> #t >(#<primitive-procedure equal?> 0.0 0.0) ==> #t >(#<primitive-procedure eqv?> 0.0 0.0) ==> #t >(#<primitive-procedure equal?> 0.0 0.0) ==> #t >SECTION(6 5 5) >(magnitude 1.0) ==> 1.0 >(#<primitive-procedure /> 1.0e300+1.0e300i 4.0e300+4.0e300i) ==> 0.25 >(magnitude 1.0) ==> 1.0 >(#<primitive-procedure /> 1.0000000000000018e-300+1.0000000000000018e-300i 4.000000000000007e-300+4.000000000000007e-300i) ==> 0.25 >(#<primitive-procedure => 0.0 0.0) ==> #t >(#<primitive-procedure => 0.0 0.0) ==> #t >(#<primitive-procedure => 0.0 0.0) ==> #t >(#<primitive-procedure inexact?> 3.9) ==> #t >(max #t) ==> #t >(#<primitive-procedure max> 3.9 4) ==> 4.0 >(#<primitive-procedure exact->inexact> 4) ==> 4.0 >(#<primitive-procedure exact->inexact> 4.0) ==> 4.0 >(#<primitive-procedure inexact->exact> 4) ==> 4 >(#<primitive-procedure inexact->exact> 4.0) ==> 4 >(#<primitive-procedure round> -4.5) ==> -4.0 >(#<primitive-procedure round> -3.5) ==> -4.0 >(#<primitive-procedure round> -3.9) ==> -4.0 >(#<primitive-procedure round> 0.0) ==> 0.0 >(#<primitive-procedure round> 0.25) ==> 0.0 >(#<primitive-procedure round> 0.8) ==> 1.0 >(#<primitive-procedure round> 3.5) ==> 4.0 >(#<primitive-procedure round> 4.5) ==> 4.0 >(#<CLOSURE (z1 z2) (#@cond ((#@and (#@exact? #@z2) (#@not (#@and (#@zero? #@z1) (#@negative? #@z2)))) (#@integer-expt #@z1 #@z2)) ((zero? z2) (+ 1 (* z1 z2))) ((and (real? z2) (real? z1) (positive? z1)) (real-expt z1 z2)) (#t (exp (* (if (zero? z1) (real-part z2) z2) (log z1)))))> 0.0 1.0) ==> 0.0 >(#<CLOSURE (z1 z2) (#@cond ((#@and (#@exact? #@z2) (#@not (#@and (#@zero? #@z1) (#@negative? #@z2)))) (#@integer-expt #@z1 #@z2)) ((#@zero? #@z2) (+ 1 (* z1 z2))) ((#@and (#@real? #@z2) (#@real? #@z1) (#@positive? #@z1)) (real-expt z1 z2)) (#t (#@exp (#@* (#@if (#@zero? #@z1) (#@real-part #@z2) z2) (#@log #@z1)))))> 0.0 1) ==> 0.0 >(#<CLOSURE (z1 z2) (#@cond ((#@and (#@exact? #@z2) (#@not (#@and (#@zero? #@z1) (#@negative? #@z2)))) (#@integer-expt #@z1 #@z2)) ((#@zero? #@z2) (+ 1 (* z1 z2))) ((#@and (#@real? #@z2) (#@real? #@z1) (#@positive? #@z1)) (real-expt z1 z2)) (#t (#@exp (#@* (#@if (#@zero? #@z1) (#@real-part #@z2) z2) (#@log #@z1)))))> 0 1.0) ==> 0.0 >(#<CLOSURE (z1 z2) (#@cond ((#@and (#@exact? #@z2) (#@not (#@and (#@zero? #@z1) (#@negative? #@z2)))) (#@integer-expt #@z1 #@z2)) ((#@zero? #@z2) (+ 1 (* z1 z2))) ((#@and (#@real? #@z2) (#@real? #@z1) (#@positive? #@z1)) (real-expt z1 z2)) (#t (#@exp (#@* (#@if (#@zero? #@z1) (#@real-part #@z2) z2) (#@log #@z1)))))> -25 0.0) ==> 1.0 >(#<CLOSURE (z1 z2) (#@cond ((#@and (#@exact? #@z2) (#@not (#@and (#@zero? #@z1) (#@negative? #@z2)))) (#@integer-expt #@z1 #@z2)) ((#@zero? #@z2) (#@+ 1 (#@* #@z1 #@z2))) ((#@and (#@real? #@z2) (#@real? #@z1) (#@positive? #@z1)) (real-expt z1 z2)) (#t (#@exp (#@* (#@if (#@zero? #@z1) (#@real-part #@z2) z2) (#@log #@z1)))))> -3.25 0.0) ==> 1.0 >(#<CLOSURE (z1 z2) (#@cond ((#@and (#@exact? #@z2) (#@not (#@and (#@zero? #@z1) (#@negative? #@z2)))) (#@integer-expt #@z1 #@z2)) ((#@zero? #@z2) (#@+ 1 (#@* #@z1 #@z2))) ((#@and (#@real? #@z2) (#@real? #@z1) (#@positive? #@z1)) (real-expt z1 z2)) (#t (#@exp (#@* (#@if (#@zero? #@z1) (#@real-part #@z2) z2) (#@log #@z1)))))> -3.25 0) ==> 1.0 >(#<CLOSURE (z . y) (#@if (#@null? #@y) (#@if (#@real? #@z) (#@real-atan #@z) (/ (log (/ (- 0.0+1.0i z) (+ 0.0+1.0i z))) 0.0+2.0i)) ($atan2 z (car y)))> 1 1) ==> 0.7853981633974483 >(#<CLOSURE (str proc) (#@call-with-open-ports (#@open-output-file #@str) #@proc)> "tmp3" #<CLOSURE (test-file) (write-char #\; test-file) (display #\; test-file) (display ";" test-file) (write write-test-obj test-file) (newline test-file) (write load-test-obj test-file) (output-port? test-file)>) ==> #t >(#<primitive-procedure read> #<input-port "tmp3">) ==> (define foo (quote (0.25 -3.25))) >(#<primitive-procedure eof-object?> #<eof>) ==> #t >(#<primitive-procedure eof-object?> #<eof>) ==> #t >(input-port? #t) ==> #t >(#<primitive-procedure read-char> #<input-port "tmp3">) ==> #\; >(#<primitive-procedure read-char> #<input-port "tmp3">) ==> #\; >(#<primitive-procedure read-char> #<input-port "tmp3">) ==> #\; >(#<primitive-procedure read> #<input-port "tmp3">) ==> (0.25 -3.25) >(#<primitive-procedure read> #<input-port "tmp3">) ==> (define foo (quote (0.25 -3.25))) >(pentium-fdiv-bug #t) ==> #t > >Passed all tests >SECTION(6 5 6) >(float-print-test #t) ==> #t >Number readback failure for (+ 1.0 (* -100 2.220446049250313e-16)) >0.9999999999999778 >Number readback failure for (+ 10.0 (* -100 1.7763568394002504e-15)) >9.999999999999822 >Number readback failure for (+ 100.0 (* -99 1.4210854715202003e-14)) >99.9999999999986 >Number readback failure for (+ 1.0e20 (* -98 16384.0)) >9.999999999999838e19 >Number readback failure for (+ 1.0e50 (* -100 2.076918743413931e34)) >9.999999999999792e49 >Number readback failure for (+ 1.0000000000000004e100 (* -100 1.942668892225729e84)) >9.999999999999813e99 >Number readback failure for (+ 0.1 (* -98 1.3877787807814456e-17)) >0.09999999999999865 >Number readback failure for (+ 0.01 (* -100 1.734723475976807e-18)) >0.009999999999999826 >Number readback failure for (+ 0.001 (* -99 2.168404344971009e-19)) >9.999999999999785e-4 >Number readback failure for (+ 1.0000000000000002e-20 (* -100 1.504632769052528e-36)) >9.999999999999851e-21 >Number readback failure for (+ 1.0000000000000004e-50 (* -100 1.1869459682199747e-66)) >9.999999999999886e-51 >Number readback failure for (+ 1.0000000000000009e-100 (* -100 1.2689709186578246e-116)) >9.999999999999881e-101 >(mult-float-print-test #f) ==> #f > BUT EXPECTED #t >Number readback failure for (+ 3.0 (* -99 4.440892098500626e-16)) >2.999999999999956 >Number readback failure for (+ 30.0 (* -100 3.552713678800501e-15)) >29.999999999999644 >Number readback failure for (+ 300.0 (* -100 5.684341886080801e-14)) >299.9999999999943 >Number readback failure for (+ 3.0e20 (* -99 65536.0)) >2.9999999999999346e20 >Number readback failure for (+ 3.0000000000000004e50 (* -100 4.153837486827862e34)) >2.9999999999999587e50 >Number readback failure for (+ 3.0000000000000004e100 (* -100 3.885337784451458e84)) >2.999999999999963e100 >Number readback failure for (+ 0.30000000000000004 (* -100 5.551115123125783e-17)) >0.2999999999999945 >Number readback failure for (+ 0.03 (* -100 3.469446951953614e-18)) >0.029999999999999648 >Number readback failure for (+ 0.003 (* -98 4.336808689942018e-19)) >0.0029999999999999577 >Number readback failure for (+ 3.0000000000000004e-20 (* -100 6.018531076210111e-36)) >2.99999999999994e-20 >Number readback failure for (+ 3.0000000000000017e-50 (* -99 4.747783872879899e-66)) >2.999999999999954e-50 >Number readback failure for (+ 3.0000000000000035e-100 (* -100 5.075883674631299e-116)) >2.9999999999999516e-100 >(mult-float-print-test #f) ==> #f > BUT EXPECTED #t >Number readback failure for (+ 7.0 (* -100 8.881784197001252e-16)) >6.999999999999911 >Number readback failure for (+ 70.0 (* -100 1.4210854715202003e-14)) >69.99999999999858 >Number readback failure for (+ 700.0 (* -99 1.1368683772161602e-13)) >699.9999999999887 >Number readback failure for (+ 7.0e20 (* -100 131072.0)) >6.99999999999987e20 >Number readback failure for (+ 7.000000000000001e50 (* -100 8.307674973655723e34)) >6.999999999999918e50 >Number readback failure for (+ 7.000000000000004e100 (* -100 1.5541351137805832e85)) >6.999999999999847e100 >Number readback failure for (+ 0.7000000000000001 (* -100 1.1102230246251565e-16)) >0.699999999999989 >Number readback failure for (+ 0.07000000000000001 (* -100 1.3877787807814456e-17)) >0.06999999999999861 >Number readback failure for (+ 0.007000000000000001 (* -100 8.673617379884035e-19)) >0.006999999999999913 >Number readback failure for (+ 7.000000000000001e-20 (* -100 1.2037062152420223e-35)) >6.999999999999881e-20 >Number readback failure for (+ 7.000000000000002e-50 (* -100 9.495567745759798e-66)) >6.999999999999908e-50 >Number readback failure for (+ 7.000000000000003e-100 (* -100 1.0151767349262594e-115)) >6.999999999999903e-100 >(mult-float-print-test #f) ==> #f > BUT EXPECTED #t >Number readback failure for (+ 3.141592653589793 (* -100 4.440892098500626e-16)) >3.1415926535897487 >Number readback failure for (+ 31.41592653589793 (* -98 3.552713678800501e-15)) >31.415926535897584 >Number readback failure for (+ 314.1592653589793 (* -99 5.684341886080801e-14)) >314.1592653589737 >Number readback failure for (+ 3.1415926535897935e20 (* -100 65536.0)) >3.141592653589728e20 >Number readback failure for (+ 3.141592653589793e50 (* -100 4.153837486827862e34)) >3.1415926535897513e50 >Number readback failure for (+ 3.1415926535897953e100 (* -100 3.885337784451458e84)) >3.1415926535897558e100 >Number readback failure for (+ 0.3141592653589793 (* -100 5.551115123125783e-17)) >0.31415926535897376 >Number readback failure for (+ 0.03141592653589793 (* -99 6.938893903907228e-18)) >0.03141592653589725 >Number readback failure for (+ 0.003141592653589793 (* -100 4.336808689942018e-19)) >0.0031415926535897495 >Number readback failure for (+ 3.1415926535897935e-20 (* -100 6.018531076210111e-36)) >3.1415926535897336e-20 >Number readback failure for (+ 3.141592653589794e-50 (* -100 4.747783872879899e-66)) >3.141592653589747e-50 >Number readback failure for (+ 3.141592653589795e-100 (* -100 5.075883674631299e-116)) >3.141592653589745e-100 >(mult-float-print-test #f) ==> #f > BUT EXPECTED #t >Number readback failure for (+ 2.7182818284590446 (* -100 4.440892098500626e-16)) >2.7182818284590002 >Number readback failure for (+ 27.182818284590446 (* -100 3.552713678800501e-15)) >27.18281828459009 >Number readback failure for (+ 271.82818284590446 (* -99 5.684341886080801e-14)) >271.8281828458988 >Number readback failure for (+ 2.7182818284590446e20 (* -100 32768.0)) >2.7182818284590117e20 >Number readback failure for (+ 2.7182818284590455e50 (* -100 4.153837486827862e34)) >2.7182818284590037e50 >Number readback failure for (+ 2.718281828459046e100 (* -100 3.885337784451458e84)) >2.7182818284590086e100 >Number readback failure for (+ 0.27182818284590446 (* -99 5.551115123125783e-17)) >0.271828182845899 >Number readback failure for (+ 0.027182818284590446 (* -100 3.469446951953614e-18)) >0.0271828182845901 >Number readback failure for (+ 0.0027182818284590446 (* -100 4.336808689942018e-19)) >0.0027182818284590015 >Number readback failure for (+ 2.7182818284590446e-20 (* -99 6.018531076210111e-36)) >2.7182818284589855e-20 >Number readback failure for (+ 2.7182818284590455e-50 (* -99 4.747783872879899e-66)) >2.7182818284589984e-50 >Number readback failure for (+ 2.7182818284590464e-100 (* -100 5.075883674631299e-116)) >2.718281828458996e-100 >(mult-float-print-test #f) ==> #f > BUT EXPECTED #t > >To fully test continuations, Scheme 4, and DELAY/FORCE do: >(test-cont) (test-sc4) (test-delay) > >;testing scheme 4 functions; >SECTION(6 7) >(#<primitive-procedure string->list> "P l") ==> (#\P #\space #\l) >(#<primitive-procedure string->list> "") ==> () >(#<primitive-procedure list->string> (#\1 #\\ #\")) ==> "1\\\"" >(#<primitive-procedure list->string> ()) ==> "" >SECTION(6 8) >(#<primitive-procedure vector->list> #(dah dah didah)) ==> (dah dah didah) >(#<primitive-procedure vector->list> #()) ==> () >(#<primitive-procedure list->vector> (dididit dah)) ==> #(dididit dah) >(#<primitive-procedure list->vector> ()) ==> #() >SECTION(6 10 4) >(load (#t #f a () 9739 -3 . #((test) "te \" \" st" "" test #() b c))) ==> (#t #f a () 9739 -3 . #((test) "te \" \" st" "" test #() b c)) > >errors were: >(SECTION (got expected (call))) >((6 5 6) (#f #t (mult-float-print-test #f))) >((6 5 6) (#f #t (mult-float-print-test #f))) >((6 5 6) (#f #t (mult-float-print-test #f))) >((6 5 6) (#f #t (mult-float-print-test #f))) >((6 5 6) (#f #t (mult-float-print-test #f))) > > >;testing continuations; >SECTION(6 9) >(#<CLOSURE (x y) (let* ((eot (list (quote eot))) (xf (next-leaf-generator x eot)) (yf (next-leaf-generator y eot))) (letrec ((loop (lambda (x y) (cond ((not (eq? x y)) #f) ((eq? eot x) #t) (else (loop (xf) (yf))))))) (loop (xf) (yf))))> (a (b (c))) ((a) b c)) ==> #t >(#<CLOSURE (x y) (#@let* ((eot (#@list (#@quote eot))) (xf (#@next-leaf-generator #@x #@eot)) (yf (#@next-leaf-generator #@y #@eot))) (#@letrec ((loop (#@lambda (x y) (#@cond ((#@not (#@eq? #@x #@y)) #f) ((#@eq? #@eot #@x) #t) (#t (#@loop (#@xf) (#@yf))))))) (#@loop (#@xf) (#@yf))))> (a (b (c))) ((a) b c d)) ==> #f > >errors were: >(SECTION (got expected (call))) >((6 5 6) (#f #t (mult-float-print-test #f))) >((6 5 6) (#f #t (mult-float-print-test #f))) >((6 5 6) (#f #t (mult-float-print-test #f))) >((6 5 6) (#f #t (mult-float-print-test #f))) >((6 5 6) (#f #t (mult-float-print-test #f))) > > >;testing DELAY and FORCE; >SECTION(6 9) >(delay 3) ==> 3 >(delay (3 3)) ==> (3 3) >(delay 2) ==> 2 >(#<primitive-procedure force> #<promise #<CLOSURE () (begin (set! count (+ count 1)) (if (> count x) count (force p)))>>) ==> 6 >(#<primitive-procedure force> #<promise 6>) ==> 6 >(force 3) ==> 3 > >errors were: >(SECTION (got expected (call))) >((6 5 6) (#f #t (mult-float-print-test #f))) >((6 5 6) (#f #t (mult-float-print-test #f))) >((6 5 6) (#f #t (mult-float-print-test #f))) >((6 5 6) (#f #t (mult-float-print-test #f))) >((6 5 6) (#f #t (mult-float-print-test #f))) > >; program args: ("./scm" "-fr4rstest.scm" "-e(test-sc4)(test-cont)(test-delay)(gc)" "-e" "(or (null? errs) (quit 1))") >make: *** [Makefile:294: check] Error 1 > * ERROR: dev-scheme/scm-5.5.6-r3::gentoo failed (test phase): > * emake failed > * > * If you need support, post the output of `emerge --info '=dev-scheme/scm-5.5.6-r3::gentoo'`, > * the complete build log and the output of `emerge -pqv '=dev-scheme/scm-5.5.6-r3::gentoo'`. > * The complete build log is located at '/var/log/portage/dev-scheme:scm-5.5.6-r3:20180523-095605.log'. > * For convenience, a symlink to the build log is located at '/var/tmp/portage/dev-scheme/scm-5.5.6-r3/temp/build.log'. > * The ebuild environment file is located at '/var/tmp/portage/dev-scheme/scm-5.5.6-r3/temp/environment'. > * Working directory: '/var/tmp/portage/dev-scheme/scm-5.5.6-r3/work/scm' > * S: '/var/tmp/portage/dev-scheme/scm-5.5.6-r3/work/scm'
You cannot view the attachment while viewing its details because your browser does not support IFRAMEs.
View the attachment on a separate page
.
View Attachment As Raw
Actions:
View
Attachments on
bug 656352
:
532762
| 532764 |
532766
|
532768
|
532770
|
532772