[r6rs-discuss] [Formal] Record layers are not orthogonal.

From: Aubrey Jaffer <agj>
Date: Thu Nov 16 18:17:27 2006

 | From: Sam TH <samth_at_ccs.neu.edu>
 | Date: Thu, 16 Nov 2006 15:46:32 -0500
 |
 | On Thu, 2006-11-16 at 11:58 -0500, David Van Horn wrote:
 | > 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.
 |
 | I think this is a belief that is widely shared among members of
 | this list, which is unfortunate. Consider the languages developed
 | since 1980 that are still in wide use (C++, Java, C#, Python, Tcl,
 | Ruby, Perl, CL, Haskell, SML, OCaml, etc). All of them (with the
 | possible exception of SML) provide extensive libraries. Now
 | consider the major Scheme implementations (I won't try to list them
 | for fear of offending people). I believe that all of them provide
 | libraries on par with SRFI 1.
 |
 | Are these facts coincidences? Of course not. Modern languages are
 | more than just a syntax and semantics, they are the standard
 | library as well. Scheme deserves a comprehensive library, not a
 | minimal one.

Scheme has a comprehensive library: SLIB
(http://swiss.csail.mit.edu/~jaffer/SLIB).

SLIB provides uniform base procedures and libraries across all R4RS
and R5RS Scheme implementations, enabling complex programs to be
written in implementation-neutral Scheme.

It has a procedural record module `record'
(http://swiss.csail.mit.edu/~jaffer/slib_7.html#SEC204) and a SRFI-9
syntactic layer `define-record-type'
(http://swiss.csail.mit.edu/~jaffer/slib_3.html#SEC39).

SLIB's `common-list-functions'
(http://swiss.csail.mit.edu/~jaffer/slib_7.html#SEC206) is a
list-library comparable to SRFI-1, but without circular lists.

 | Perhaps, for reasons of compromise between the editors, an
 | extensive list library (or other library) cannot be agreed on.
 | However, a useful standard library (covering records, lists, and
 | many other things) should be a goal of RnRS.
Received on Thu Nov 16 2006 - 18:15:46 UTC

This archive was generated by hypermail 2.3.0 : Wed Oct 23 2024 - 09:15:00 UTC