On Thu, Sep 10, 2009 at 4:31 PM, John Cowan <[email protected]> wrote:
> Alaric Snell-Pym scripsit:
>
>> Even if just a recommendation that an implementation
>> supply an "install-module" procedure that takes a filename, and
>> attempts to find a module inside it and install it, or something.
>
> I wouldn't want to see that as a *Scheme* procedure, but if you mean that
> the implementation should provide it somehow (possibly outside Scheme --
> arbitrary programs probably shouldn't install things, and may not have
> the privileges to do so anyhow), then fair enough.

It seems to me like specifying the name and behavior such a procedure
(or a family of procedures from which one could build an appropriate
installation script in Scheme) as an *optional* part of the core could
make sense.

The host Scheme implementation may be able to assist with the
installation process (e.g. in resolving problems like duplicate
library names).  It seems more fool-proof (and less scary to
new-comers) than relying solely on a sequence of end-user actions to
install a provided library.

(The hypothetical advantage with specifying a family of core
procedures atop which to build such a script, e.g.
(library-name->file-system-path lib), is that we might then see
community effort in coming up with different portable installation
scripts.  But then again determining an appropriate core set of
procedures is probably an unreasonable task for WG1.)

I suggested that an installation script could be written in Scheme and
provided by the implementation back before the R6RS was ratified [1].
PLT Scheme's plt-r6rs command has an --install flag that makes it
install libraries from a given file; I do not know if other Scheme's
offer a similar convenience.  (In Larceny, Will and I tried to make
the library resolution process flexible; I am now thinking that
flexibility is not a substitute for a standard automatic method.)

-Felix

[1] http://lists.r6rs.org/pipermail/r6rs-discuss/2006-November/000703.html

_______________________________________________
r6rs-discuss mailing list
[email protected]
http://lists.r6rs.org/cgi-bin/mailman/listinfo/r6rs-discuss

Reply via email to