* bug#10326: Need to document %load-path, %load-compiled-path, and add %search-load-compiled-path and load-compiled-from-path to API @ 2011-12-19 15:00 Ian Hulin 2011-12-23 23:46 ` Ian Price 2012-01-27 12:20 ` Andy Wingo 0 siblings, 2 replies; 5+ messages in thread From: Ian Hulin @ 2011-12-19 15:00 UTC (permalink / raw) To: 10326 Section 6.17.6 of the manual could do with a sections for %load-path and %load-compiled-path. e.g. — Variable: %load-path The list of directories which will currently be searched by load-from-path, primitive-load-path and %search-load-path to locate a scheme file. - Variable: %load-compiled-path The list of directories which will currently be searched by load-compiled-from-path and %search-load-compiled-path to locate a compiled scheme file. Also, Guile really needs to provide a %search-load-compiled-path and a load-compiled-from-path, it would have been useful in LilyPond code, and Manual Section 4.7 (discussing site locations says) "As with Scheme files, Guile searches a path to find compiled .go files, the %load-compiled-path. By default, this path has two entries: a path for Guile's files, and a path for site packages. You should install your .go files into the latter. Currently there is no procedure to get at this path, which is probably a bug." — Scheme Procedure: %search-load-compiled-path filename — C Function: scm_sys_search_load_compiled_path (filename) Search %load-compiled-path for the file named filename, which must be readable by the current user. If filename is found in the list of paths to search or is an absolute pathname, return its full pathname. Otherwise, return #f. — Scheme Procedure: load-compiled-from-path filename Similar to load-compiled, but searches for filename in the compiled load paths. ^ permalink raw reply [flat|nested] 5+ messages in thread
* bug#10326: Need to document %load-path, %load-compiled-path, and add %search-load-compiled-path and load-compiled-from-path to API 2011-12-19 15:00 bug#10326: Need to document %load-path, %load-compiled-path, and add %search-load-compiled-path and load-compiled-from-path to API Ian Hulin @ 2011-12-23 23:46 ` Ian Price 2011-12-24 12:22 ` Ian Hulin 2012-01-27 12:20 ` Andy Wingo 1 sibling, 1 reply; 5+ messages in thread From: Ian Price @ 2011-12-23 23:46 UTC (permalink / raw) To: 10326 Ian Hulin <ian@hulin.org.uk> writes: > Section 6.17.6 of the manual could do with a sections for %load-path > and %load-compiled-path. > > e.g. > — Variable: %load-path > > The list of directories which will currently be searched by > load-from-path, primitive-load-path and %search-load-path to locate a > scheme file. > > - Variable: %load-compiled-path > > The list of directories which will currently be searched by > load-compiled-from-path and %search-load-compiled-path to locate a > compiled scheme file. %load-path is already documented in 2.0, in section 6.22.1, 6.17.6 may be a better place for it though, as that is where e.g. %search-load-path, %load-hook etc. are. %load-compiled-path seems to be only indirectly referred to in the %documentation for GUILE_LOAD_COMPILED_PATH and compiled-file-name. > Also, Guile really needs to provide a %search-load-compiled-path and a > load-compiled-from-path, it would have been useful in LilyPond code, and > Manual Section 4.7 (discussing site locations says) I don't see a %search-load-compiled-path or load-compiled-from-path in guile 2.0's stable branch. Where these removed? Or have I missed them? > "As with Scheme files, Guile searches a path to find compiled .go > files, the %load-compiled-path. By default, this path has two entries: > a path for Guile's files, and a path for site packages. You should > install your .go files into the latter. Currently there is no > procedure to get at this path, which is probably a bug." > > > — Scheme Procedure: %search-load-compiled-path filename > — C Function: scm_sys_search_load_compiled_path (filename) > > Search %load-compiled-path for the file named filename, which must > be readable by the current user. If filename is found in the list of > paths to search or is an absolute pathname, return its full pathname. > Otherwise, return #f. Unless you meant %search-load-compiled-path, this sounds similar to the documented procedure 'compiled-file-name' > > — Scheme Procedure: load-compiled-from-path filename > > Similar to load-compiled, but searches for filename in the > compiled load paths. If the above is correct, this is just (compose load-compiled compiled-file-name), yes? Might be useful for symmetry with 'load-from-path' -- Ian Price "Programming is like pinball. The reward for doing it well is the opportunity to do it again" - from "The Wizardy Compiled" ^ permalink raw reply [flat|nested] 5+ messages in thread
* bug#10326: Need to document %load-path, %load-compiled-path, and add %search-load-compiled-path and load-compiled-from-path to API 2011-12-23 23:46 ` Ian Price @ 2011-12-24 12:22 ` Ian Hulin 0 siblings, 0 replies; 5+ messages in thread From: Ian Hulin @ 2011-12-24 12:22 UTC (permalink / raw) To: Ian Price; +Cc: 10326 Hi Ian, On 23/12/11 23:46, Ian Price wrote: > Ian Hulin <ian@hulin.org.uk> writes: > >> Section 6.17.6 of the manual could do with a sections for >> %load-path and %load-compiled-path. >> >> e.g. — Variable: %load-path >> >> The list of directories which will currently be searched by >> load-from-path, primitive-load-path and %search-load-path to >> locate a scheme file. >> >> - Variable: %load-compiled-path >> >> The list of directories which will currently be searched by >> load-compiled-from-path and %search-load-compiled-path to locate >> a compiled scheme file. > > %load-path is already documented in 2.0, in section 6.22.1, 6.17.6 > may be a better place for it though, as that is where e.g. > %search-load-path, %load-hook etc. are. > Or a cross-ref,or move it from 6.22 and put the cross-ref in here, depending on Guile's documentation policies. > %load-compiled-path seems to be only indirectly referred to in the > %documentation for GUILE_LOAD_COMPILED_PATH and > compiled-file-name. > >> Also, Guile really needs to provide a %search-load-compiled-path >> and a load-compiled-from-path, it would have been useful in >> LilyPond code, and Manual Section 4.7 (discussing site locations >> says) > > I don't see a %search-load-compiled-path or load-compiled-from-path > in guile 2.0's stable branch. Where these removed? Or have I missed > them? > I don't think they were ever implemented. >> "As with Scheme files, Guile searches a path to find compiled >> .go files, the %load-compiled-path. By default, this path has two >> entries: a path for Guile's files, and a path for site packages. >> You should install your .go files into the latter. Currently >> there is no procedure to get at this path, which is probably a >> bug." >> >> >> — Scheme Procedure: %search-load-compiled-path filename — C >> Function: scm_sys_search_load_compiled_path (filename) >> >> Search %load-compiled-path for the file named filename, which >> must be readable by the current user. If filename is found in the >> list of paths to search or is an absolute pathname, return its >> full pathname. Otherwise, return #f. > > Unless you meant %search-load-compiled-path, this sounds similar to > the documented procedure 'compiled-file-name' No: compiled-file-name does more and different things which are intimately linked in to --auto-compile and its related cache. If you're compiling things to locations outside of this cache (as we need to do for LilyPond) you need to set a directory as an entry in %load-compiled-path and pass this explicitly to compile-file (guild compile if your doing this from within a build environment). We then need to have custom code to load the compiled files during startup. This is because the built-in things in load-from-path et al. rely on compiled-file-name which don't do the right thing if you're compiling to a location outside the --auto-compile cache. So. . . if we want to load our compiled scheme files, possibly produced from guild compile in a build, outside of the --auto-compile cache, we have to use load-compiled, which explicitly says "Load the compiled file named /filename/. The load paths are not searched." >> >> — Scheme Procedure: load-compiled-from-path filename >> >> Similar to load-compiled, but searches for filename in the >> compiled load paths. > If the above is correct, this is just (compose load-compiled > compiled-file-name), yes? No. See above > Might be useful for symmetry with 'load-from-path' > Yes. Cheers, Ian Hulin ^ permalink raw reply [flat|nested] 5+ messages in thread
* bug#10326: Need to document %load-path, %load-compiled-path, and add %search-load-compiled-path and load-compiled-from-path to API 2011-12-19 15:00 bug#10326: Need to document %load-path, %load-compiled-path, and add %search-load-compiled-path and load-compiled-from-path to API Ian Hulin 2011-12-23 23:46 ` Ian Price @ 2012-01-27 12:20 ` Andy Wingo 2013-03-10 22:22 ` Andy Wingo 1 sibling, 1 reply; 5+ messages in thread From: Andy Wingo @ 2012-01-27 12:20 UTC (permalink / raw) To: Ian Hulin; +Cc: 10326 Hi Ian, Thank you for the bug report. As a result of this report we have added a fair amount of documentation and reorganized other things. In particular, see the new sections: Modules and the File System Installing Site Packages Load Paths On Mon 19 Dec 2011 16:00, Ian Hulin <ian@hulin.org.uk> writes: > - Variable: %load-compiled-path > > The list of directories which will currently be searched by > load-compiled-from-path and %search-load-compiled-path to locate a > compiled scheme file. There is no load-compiled-from-path or %search-load-compiled-path. There is, however, search-path and %load-compiled-path. Guile doesn't simply look for compiled files: it looks for compiled files that correspond to source files. They could be in the load-compiled path or in the fallback path. The search rules are different here -- see "Load Paths" and "Compilation", for details. Auto-compilation only happens with the fallback path. Do you still think that load-compiled-from-path would be useful to you? If everything is set up correctly, load-from-path should be sufficient, as it would find the corresponding compiled file. > "As with Scheme files, Guile searches a path to find compiled .go > files, the %load-compiled-path. By default, this path has two entries: > a path for Guile's files, and a path for site packages. You should > install your .go files into the latter. Currently there is no > procedure to get at this path, which is probably a bug." I'll see about fixing this. Andy -- http://wingolog.org/ ^ permalink raw reply [flat|nested] 5+ messages in thread
* bug#10326: Need to document %load-path, %load-compiled-path, and add %search-load-compiled-path and load-compiled-from-path to API 2012-01-27 12:20 ` Andy Wingo @ 2013-03-10 22:22 ` Andy Wingo 0 siblings, 0 replies; 5+ messages in thread From: Andy Wingo @ 2013-03-10 22:22 UTC (permalink / raw) To: Ian Hulin; +Cc: 10326-done On Fri 27 Jan 2012 13:20, Andy Wingo <wingo@pobox.com> writes: >> "As with Scheme files, Guile searches a path to find compiled .go >> files, the %load-compiled-path. By default, this path has two entries: >> a path for Guile's files, and a path for site packages. You should >> install your .go files into the latter. Currently there is no >> procedure to get at this path, which is probably a bug." > > I'll see about fixing this. Added %site-ccache-dir, and updated docs. Andy -- http://wingolog.org/ ^ permalink raw reply [flat|nested] 5+ messages in thread
end of thread, other threads:[~2013-03-10 22:22 UTC | newest] Thread overview: 5+ messages (download: mbox.gz follow: Atom feed -- links below jump to the message on this page -- 2011-12-19 15:00 bug#10326: Need to document %load-path, %load-compiled-path, and add %search-load-compiled-path and load-compiled-from-path to API Ian Hulin 2011-12-23 23:46 ` Ian Price 2011-12-24 12:22 ` Ian Hulin 2012-01-27 12:20 ` Andy Wingo 2013-03-10 22:22 ` Andy Wingo
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).