John Cowan <xxxxxx@ccil.org> schrieb am So., 20. Mai 2018 um 05:31 Uhr:
The tests now run correctly for me.  However, in order to make the (srfi 146) and (srfi 146 hash) importable into Chibi from any working directory, I must copy the nieper directory and the contents of the srfi/hamt directory into $PREFIX/share/chibi, thus polluting the Chibi library namespace.  This is not Chibi-specific, but affects all R7RS systems, because R7RS has no concept of modules that are only locally visible.  The tests hack around this by setting the Chibi import path on the command line, but this is not a general solution.

I wouldn't call it a hack because the test runner Makefile cannot not assume that the libraries are properly installed so it has to give the Chibi interpreter the library locations explicitely using the -I and -A command line switches (which are, somewhat, standardized by SRFI 138).

The reason why my rbtree library is prefixed with 'nieper' is exactly to prevent namespace pollution (think of 'nieper' as a vendor-specific prefix). What I would suppose instead is to prefix the hamt libraries with 'gleckler'. What do you think?

Having (srfi 146) and (srfi 146 hash) importing libraries (nieper rbtree) and (gleckler hamt) instead of including their source code also seems to fit better to the ideas of the R7RS package system Snow.

-- Marc