[r6rs-discuss] One vote

From: Aubrey Jaffer <agj>
Date: Wed, 15 Aug 2007 14:34:32 -0400 (EDT)

 | Date: Tue, 14 Aug 2007 00:18:31 -0500
 | From: Chongkai Zhu <czhu at cs.utah.edu>
 |
 | Aubrey Jaffer wrote:
 | > ...
 | >
 | > The effect of adding macros to Scheme has been the proliferation
 | > of mutually incomprehensible language dialects. We have seen the
 | > growth of "convenience" macros like WHENNOT and UNLESS, use of
 | > macros as a substitute for compiler optimization, and use of
 | > macros to avoid using symbols as tokens. None of these uses
 | > increases the *expressive power* of the language.
 |
 | "On the Expressive Power of Programming Languages", macro is the
 | way to compose a language that only has a small number of rules to
 | be able to express more.

The three uses of macros that I cite above (which I have observed) do
not increase the expressive power of Scheme.

 | > In a reusable software world, the use of incompatible dialects is
 | > detrimental; it is only through documenting, publishing, and
 | > deliberating, say in a SRFI, that new forms should be adopted
 | > into that "very small number of rules for forming expressions".
 | >
 | > Arrays
 | >
 | > Computations have been organized into multidimensional arrays for
 | > over 200 years. Applications for multi-dimensional arrays are
 | > widespread and continue to arise. Computer graphics and imaging,
 | > whether vector or raster based, use arrays. A general-purpose
 | > computer language without multidimensional arrays is an oxymoron.
 | >
 | > Although multidimensional arrays are the subject of SRFI-25,
 | > SRFI-47, SRFI-58, and SRFI-63, and portably supported by SLIB,
 | > search of http://www.r6rs.org/r6rs-editors/ finds nothing to
 | > indicate that the editors ever considered their inclusion in
 | > R6RS.
 | >
 | > Can R5.97R Scheme be extended to support SRFI-63 arrays?
 |
 | One story: an unusable version of SRFI-63 was once put in PLT
 | Scheme for about 1 year, yet not any complain was heard.

That was not my doing. The SLIB implementation of SRFI-63, as well as
the example implementation in SRFI-63 (requiring SRFI-9) will run
correctly in any R4RS or R5RS implementation. I have used SRFI-63
arrays from SLIB successfully in plt-scheme-370 mzscheme (which, of
course, bypassed the bad SRFI-63 implementation I knew nothing about).

 | If now there is a vote for SRFI-63, I will definitely vote for no.

I am sorry that you hold SRFI-63 responsible for the actions of
someone unknown to its author.

 | > Libraries
 | >
 | > ...
 |
 | Yes, R5.97RS's module system only supports internal linking. But
 | external linking can be provided in a portable fashion on top it
 | (using macros).

That would be exciting news! How does it work?
Received on Wed Aug 15 2007 - 14:34:32 UTC

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