[Top][All Lists]

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: srfi-64 tests passing when they should not

From: Taylan Kammer
Subject: Re: srfi-64 tests passing when they should not
Date: Thu, 6 May 2021 13:16:17 +0200
User-agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:78.0) Gecko/20100101 Thunderbird/78.10.1

On 05.05.2021 15:47, Luis Felipe wrote:
> Hi Taylan,
> On Wednesday, May 5, 2021 6:39 AM, Taylan Kammer <> 
> wrote:
>> On 04.05.2021 10:31, Zelphir Kaltstahl wrote:
>>> The first 2 tests are surprisingly passing. This is also the reason, why I 
>>> used
>>> test-assert and manually wrote the (equal? ...) in the last test, to see,
>>> whether it makes any difference. Indeed it does.
>> The reference implementation of SRFI-64 (which is what Guile ships)
>> doesn't seem to be written very well.
>> I have an alternative implementation here, if you're interested:
>> I'm not sure if the newest Guile is able to run it out of the box
>> though. You might have to create some .scm symlinks to the .sld files.
> For what it's worth, I know about your implementation for a long time, but 
> I've never tried to use it because I don't know where to start. Is it not 
> possible to package these libraries so that users can simply install them as 
> any other guile library? Say:
> $ guix install r7rs-srfi-64
> I see that Guile can be run with the "--r7rs" option "to better support 
> R7RS"...

Hmm, I had hoped that with the newest Guile, simply adding the repo's
root directory to the load path would work, at least when invoked with
the --r7rs switch, but it seems that Guile still chokes on library name
parts that are integers.  That's an incompatibility with r7rs that's not
mentioned in the manual.

I guess the only way to make the modules work is to rename all the files
and change the library names to not use integer parts.

Maybe I'll make a guile-compatible standalone package for the SRFI-64
implementation, since that's the most fancy thing in that repo.

I might do it in the following days since I'm on a vacation, but... the
vacation is supposed to be a vacation. :-)  Work has been really burning
me out in the last year.

If someone else feels like trying: all you have to do is rename .sld
files to .scm, change the integer parts of the module names to symbols
(e.g. s64 instead of 64), and rename the directory '64' accordingly.

- Taylan

reply via email to

[Prev in Thread] Current Thread [Next in Thread]