(Arne Babenhauserheide)
2014-08-19: can write scheme can write scheme
diff --git a/wisp-scheme.w b/wisp-scheme.w
--- a/wisp-scheme.w
+++ b/wisp-scheme.w
@@ -461,15 +461,21 @@ define : wisp-scheme-read-string str
call-with-input-string str wisp-scheme-read-all
-; display
-; wisp-scheme-read-string "foo ; bar\n ; nop \n\n; nup\n; nup \n \n\n\nfoo : moo \"\n\" \n___ . goo . hoo"
-; newline
+write
+ wisp-scheme-read-string "foo ; bar\n ; nop \n\n; nup\n; nup \n \n\n\nfoo : moo \"\n\" \n___ . goo . hoo"
+newline
; display
; wisp-scheme-read-string " foo ; bar\n ; nop \n\n; nup\n; nup \n \n\n\nfoo : moo"
; newline
-; display : wisp-scheme-read-file-chunk "wisp-scheme.w"
+; write : wisp-scheme-read-file-chunk "wisp-scheme.w"
; newline
; run all chunks in wisp-guile.w as parsed by wisp-scheme.w. Give wisp-guile.w to parse as argument.
-map primitive-eval : wisp-scheme-read-file "wisp-guile.w"
+; map primitive-eval : wisp-scheme-read-file "wisp-guile.w"
+call-with-output-file "wisp-guile.scm"
+ lambda : port
+ map
+ lambda : chunk
+ write chunk port
+ wisp-scheme-read-file "wisp-guile.w"
; pipe the output into 1, then compare it with the output of wisp.scm. If it is equal, this parser works!
; guile wisp.scm wisp-scheme.w > wisp-scheme.scm; guile wisp-scheme.scm wisp-guile.w > 1; guile wisp.scm wisp-guile.w > 2; diff 1 2