Hi, On Thu 18 Sep 2008 00:57, <[EMAIL PROTECTED]> writes:
> Basically, a .go file will be preferred over a .scm file even if the > .scm file is earlier in the load-path. I think that the file earlier > in the load-path should win. A few thoughts: (1) Guile shouldn't have installed paths (its system paths) in its path when running uninstalled, otherwise you can get strange issues like you saw -- it's not limited to .go files, it could be .scm as well (2) I can imagine cases in which you would want compiled files not in the same location as source; e.g. /usr/lib64/guile/ vs /usr/share/guile/; although currently .go files are not platform-dependent (I don't think) (3) Currently there is no linkage between the absolute directory of the .scm file and the .go file, neither in the compilation nor in the loading; but there is a linking with the relative path if you use primitive-load-path (4) We already check to make sure that the .go file is newer than the .scm file I would suggest that the current way is sufficient, if we disable loading from the installed paths when running pre-inst-guile; because I kinda want to allow (2), but I don't want to deal with ordering issues within %load-path of "compiled locations" versus "source locations". Sorry about your bug, I know it was a bit painful. But you would not have had it if guile were operating correctly in the first place, regardless of the .go vs .scm issue. We certainly need to have a better story regarding versioning, so we don't load incompatible .go files. Andy -- http://wingolog.org/