[gambit-list] My R6RS vote
Marijn Schouten (hkBst)
hkBst at gentoo.org
Mon Aug 13 05:42:28 EDT 2007
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1
Marc Feeley wrote:
> The Scheme community will fragment and Scheme innovation will slowly die.
Are we not already fragmented?
There is no agreed upon standard way to even load SRFIs.
SRFI-55 [http://srfi.schemers.org/srfi-55/srfi-55.html] defines
require-extension to provide this functionality. Below you will find a simple
test. Note in particular that Bigloo, Gambit and MzScheme all fail to provide
this functionality, just like ELK, mit-scheme and scm. Only Chicken, Gauche,
Guile and stklos pass. I was under the impression that R6RS aimed to solve
this problem (but I may be wrong) and I am willing to swallow whatever else
has been put in if it does.
Marijn
Test-results of running:
echo "(display \"hello world\")(newline)(require-extension (srfi 1))(display
(make-list 4 'c))(newline)" | ./interpret
[interpret is a custom script of mine, to help me test multiple Schemes easily]
bigloo:
hello world
*** ERROR:eval:
Unbound variable (from top-level) -- require-extension
chicken:
hello world
(c c c c)
elk:
hello world
begin: unbound variable: require-extension
gambit:
hello world
*** ERROR IN (string)@1.5 -- Unbound variable: require-extension
gauche:
hello world
(c c c c)
guile:
hello world
(c c c c)
mit-scheme:
hello world
;Unbound variable: srfi
;To continue, call RESTART with an option number:
; (RESTART 3) => Specify a value to use instead of srfi.
; (RESTART 2) => Define srfi to a given value.
; (RESTART 1) => Return to read-eval-print level 1.
2 error>
End of input stream reached.
mzscheme:
hello world
reference to undefined identifier: require-extension
scm:
hello world
;ERROR: eval: unbound variable: require-extension
; in expression: (require-extension (srfi 1))
; in top level environment.
; defined by eval
;STACK TRACE
1; (#@begin (#@display "hello world") (#@newline) (require-extens ...
2; ((#@thunk) (set! complete #t))
3; ((#@require (#@quote string-port)) (#@do-thunk (#@lambda () (( ...
4; ((#@case #@option #(#<unspecified> #f #\? #\: #\n #\u #\m #\s ...
5; ((#@cond ((#@not #@*argv*) (#@set! #@*argv* (#@program-argumen ...
; program args: ("scm" "-e" "(begin (display \"hello
world\")(newline)(require-extension (srfi 1))(display (make-list 4
'c))(newline) (newline))")
stklos with full-syntax:
hello world
(c c c c)
stklos:
hello world
(c c c c)
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v2.0.5 (GNU/Linux)
Comment: Using GnuPG with Mozilla - http://enigmail.mozdev.org
iD8DBQFGwCeEp/VmCx0OL2wRAv4gAJ41hlsf8YocAKsyMOcDPZgakO4ecgCgi8Ng
wZAY/v+DhvvjcDHK2aA5aaM=
=wyMg
-----END PGP SIGNATURE-----
More information about the Gambit-list
mailing list