Re: [Scheme-reports] "include" filename resolution
Shiro Kawai 14 Aug 2011 04:41 UTC
I used to like the build-time configuration approach, but it seems that
it's not people ask outside of Unix-centric culture; Windows, or even
on Macs, people drop the folder to wherever they like and expect it to
work.
Consequently, on Windows and Mac OSX, Gauche determines the directory
where the executing binary exists at run-time and set up the load path list
according to it. Relative paths in load are resolved against those paths
unless the user prepends other directories to the load path list.
Third-party library installation directories are also determined by the
directory of the running binary if one follows Gauche-standard installation
procedure. So far it has been working well. If third party library needs to
be installed in different locations, the user needs to set up load path
manually, though.
Resolving pathnames against the directory of running executable is
also handy if Gauche is embedded in an application as a
bundled framework on OSX. The application developer doesn't need
to concern about configuring embedded Gauche.
That said, I like the resolution of 'include' path should be in relative to
where the 'includer' file exists.
On Sat, Aug 13, 2011 at 7:17 AM, Aubrey Jaffer <agj@alum.mit.edu> wrote:
> The operative word here is "build". In SLIB, a Scheme program builds
> catalog paths (absolute or relative) on the host when it is installed.
> While those paths are radically different on different
> operating-systems, they don't change on a host.
_______________________________________________
Scheme-reports mailing list
Scheme-reports@scheme-reports.org
http://lists.scheme-reports.org/cgi-bin/mailman/listinfo/scheme-reports