Re: whoa Abdulaziz Ghuloum 24 Sep 2009 23:45 UTC

On Sep 24, 2009, at 8:36 PM, Derick Eddington wrote:

> Taylor Campbell wrote:
>> I expected, perhaps, a sentence such as the following to explain the
>> entire specification, modulo details of term definitions:
>> `A Scheme system keeps a list of directory pathnames called its
>> search
>> path, relative to which it looks in order for libraries' source code
>> by mapping their component names to file names, mapping alphanumerics
>> and hyphens to themselves, and mapping all other code points by
>> percent-encoding.'
>> Maybe there need to be a couple more sentences about an environment
>> variable storing the search path, putting version numbers before the
>> `.sls' suffix
> If it were that small, it would lack features and qualities I want
> it to
> have.

That short description is fine if you want to have a one-paragraph
description, but as things stands, it's insufficient to ensure that
a collection of libraries can be used by multiple implementations
without having to reorganize, symlink, etc., every time you use a
different implementations.  Derick already enumerates many of such
incompatibilities, and I'm sure many more are not listed.
For example, just saying "percent-encoding" does not cut it since
it doesn't say if the hex characters are capital or small letters
(this just recently came up on the PLT list).

So, yes, in general, you can limit the description to say
   "(foo bar baz) => foo/bar/baz.sls"
and the rest of the document is just details of corner cases that
we'd like all implementations to agree on (which is what SRFIs are
all about, no?).

If you think there's a better way for organizing libraries so that
all implementations that I use can find them easily, efficiently,
and uniformly, I'm all ears.