[Larceny-users] snow install path

Alex Shinn alexshinn at gmail.com
Tue Mar 24 00:16:58 EDT 2015


On Tue, Mar 24, 2015 at 8:08 AM, William D Clinger <will at ccs.neu.edu> wrote:

> Alex Shinn wrote:
> >
> > I could put them under $LARCENY_ROOT/lib/R7RS/, but in
> > general prefer a system-wide install, such as /usr/local/share/larceny/,
> > which would require users of snow with larceny to set LARCENY_LIBPATH.
>
> I see two problems with expecting Larceny users to put things in
> directories such as /usr/local/share/larceny:
>
>   * Windows machines don't have that directory.
>

Good point, we'd need a separate path on Windows regardless.

  * Users of Linux and Macintosh machines may not have permission
>     to add directories to /usr/local/share.


This is already handled by being able to specify a custom install prefix.
For example, a *nix user could maintain ~/bin, ~/lib, etc., setting $PATH
and $LD_LIBRARY_PATH accordingly, and install their own packages
with "make PREFIX=$HOME install".  They would specify the same prefix
for snow.

If you're proposing libraries that should eventually ship as part
> of Larceny, then some subdirectory of $LARCENY_ROOT/lib might be
> the most appropriate place.


Snow is basically CPAN for Scheme, so I doubt most of these would want
to ship with larceny for several reasons:

  1. licensing differences
  2. size (the number of libraries should quickly grow to the hundreds)
  3. release schedule differences
  4. conflicting packages (e.g. competing implementations of the same SRFI)

So if we use $LARCENY_ROOT, the lib/Snow might be best.
Is there a way to programmatically determine $LARCENY_ROOT?
For the relative path I can use:

larceny -quiet -nobanner -- -e '(begin(write(current-require-path))(exit))'

-- 
Alex
-------------- next part --------------
HTML attachment scrubbed and removed


More information about the Larceny-users mailing list