On 13.11.2023 15:21, 無無 wrote: > I have read that in R7RS a library name is defined as: > > <library name> -> ( <library name part>+ ) > <library name part> -> <identifier> | <uinteger 10> > <uinteger R> -> <digit R> > <digit 10> -> <digit> > <digit> -> 0 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 > > That means that a valid library name would be something like (a b 1), > where "1" is a valid library name part, but the following code > disagrees. running `guile --r7rs -L . a/good-main.scm` works while > `guile --r7rs -L . a/bad-main.scm` fails. > > [...] >
This is unfortunately a known limitation in Guile's R7RS support. IIRC, integers in library names only works for (srfi N) which is internally transformed to (srfi srfi-N). -- Taylan