unofficial mirror of guile-devel@gnu.org 
 help / color / mirror / Atom feed
* GUILE_LOAD_PATH and the UNIX architecture
@ 2015-07-21  0:46 Matt Wette
  0 siblings, 0 replies; only message in thread
From: Matt Wette @ 2015-07-21  0:46 UTC (permalink / raw)
  To: guile-devel

Hi Folks,

I have found another issue with the GUILE_LOAD_PATH.  In January I filed a bug report (#19540) on the use of "." in GUILE_LOAD_PATH.  Now I'm running into another issue with GUILE_LOAD_PATH that contains  an empty path (e.g., "/x::/y").  Before I file a bug report I wanted to see if there is a consensus on what the behavior of guile should be in these cases.

The convention in Unix-based systems is that environment PATH variables provide users a way to alter the set of directories searched for resources.  Now "." (and other relative paths) are allowed in most, if not all, the path-sensitive applications I am aware of.  It is now conventional wisdom that "." in the PATH variable can be dangerous, but nonetheless this is allowed: it is up to the user to set up things intelligently: it is part of the UNIX architecture.  Occasionally, I like to add "." to some path environment variables to help development, debugging etc.  

So should guile work with "." in the PATH or not, and if not, should it import that into %load-path?   And if it does, what should the behavior be?

Now here are the features, or bugs if you prefer, that I have found:
1) if you put "." in GUILE_LOAD_PATH, then the path loaded in complied modules gets loaded with "././././././" (one "./" added each time the module is recompiled).
2) if you put the empty path ("/x::/y") in GUILE_LOAD_PATH (two colons with nothing between), the behavior of `(include "file")' does not work.

Comments?

Matt






^ permalink raw reply	[flat|nested] only message in thread

only message in thread, other threads:[~2015-07-21  0:46 UTC | newest]

Thread overview: (only message) (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2015-07-21  0:46 GUILE_LOAD_PATH and the UNIX architecture Matt Wette

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).