[r6rs-discuss] [Formal] Record layers are not orthogonal.
David Van Horn
dvanhorn at cs.brandeis.edu
Thu Nov 16 11:58:59 EST 2006
Abdulaziz Ghuloum wrote:
> On Nov 16, 2006, at 12:50 AM, David Van Horn wrote:
>> I don't understand the problem with these syntactic layers being
>> optional. If they are compelling, implementations will support them.
>> If not, why should they be included in the language standard?
> If I may add that if they can be implemented portably, you wouldn't need
> implementation support to use them. You can just import and hack away (in
> theory at least).
By support, I meant something like, make the library available to users,
include documentation, etc. In any case, it seems irrelevant.
> I see SRFIs as a way to ask implementors to support libraries that cannot
> be expressed using R6RS. Such libraries include FFI, networking,
> etc. Libraries that can be expressed directly using R6RS such as regular
> expressions, XML parsers, adventure games, etc. are better distributed via
> some other distribution mechanism (like PlaneT) since they do not need the
> SRFI process. Implementors can support popular libraries natively if they
I agree that SRFIs are well suited for requesting features that cannot
be expressed in R6RS. But I also believe SRFIs serve a purpose for
describing libraries that can be well-implemented portably but are
beyond the scope of the language definition. For example, a
comprehensive list library is a good SRFI candidate. The community
benefits by having a consistent, complete, and portable library. Should
this be part of R6RS? No-- R6RS should give us the means for writing
such a library, not the library itself. Should this be a package
distributed by some individual or group? No-- the community benefits
from having a unified library with a clear immutable specification that
has undergone public review. Other SRFIs of this kind would include
libraries for things like streams, comprehensions, enumerated sets,
strings, etc, etc. I am not convinced, but I believe it at least
plausible that a syntax for records could fall into this category.
More information about the r6rs-discuss