Re: Anyone to help with .sls/.sld files?
Lassi Kortela 30 Aug 2024 15:45 UTC
> The SRFI seems to come together nicely. One thing that was always broken
> with it, though: library files (.sls/.sld) are useless and I was unable
> to fix them. Anyone willing to try fixing them? I bet there are better
> Schemers than me on this mailing list.
Please list specific error messages, and which Scheme implementations
produced each of them.
Off the top of my head:
The file names need to be consistent with the library names used in the
source code. srfi/srfi.sld should be srfi/253.sld instead. srfi/srfi.sls
is more complicated, as R6RS file naming conventions are a mess.
Write (define-library (srfi 253) ...) and (library (srfi :253) ...)
respectively.
Using `export` inside `cond-expand` is an anti-pattern. A library should
export the same set of identifiers in all cases.
(cond-expand ... (else)) is probably not appropriate here. It may cause
an unsupported implementation to silently import the library until the
user attempts to call one of the non-existent procedures. If you leave
out the `else` branch, a well-behaved Scheme implementation will raise
an error at import time.
In (library ...) [i.e. R6RS], (include "...") is non-standard and is
probably best avoided.