[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: semantics and portability



> >>>>> "Marc" == Marc Feeley <feeley@xxxxxxxxxxxxxxxx> writes:
> 
> Marc> No.  All I am saying is that the process started to run the underlying
> Marc> interpreter should have the same (shell) environment as the one of
> Marc> "scheme-script".
> 
> After rereading this, I'm still not sure I get it.  "scheme-script"
> *is* the underlying interpreter, no?

Well it could be the executable for the interpreter, but it could also
be a shell script that execs the appropriate underlying interpreter
(Gambit, Scheme48, etc) after doing some administrative checks (that
the user has permission to run the interpreter, logging the use of
a Scheme script, or whatever).  For example, I can perfectly imagine
Gambit's interpreter to reside in "gsi" and "scheme-script"
is a shell script like this

   #! /bin/sh
   ... parse command line options BUT DON'T CHANGE THE ENVIRONMENT!
   exec gsi ...

This means that old versions of Gambit, and probably most current
implementations of Scheme, can be SRFI 22 compliant if the appropriate
shell script is written for "scheme-script".

In future versions of Gambit I plan to install a symbolic link from
"scheme-script" to "gsi" and let gsi do the special SRFI 22 command line
parsing.

Marc