| Date: Tue, 14 Aug 2007 00:18:31 -0500 | From: Chongkai Zhu <[EMAIL PROTECTED]> | | 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? _______________________________________________ r6rs-discuss mailing list [email protected] http://lists.r6rs.org/cgi-bin/mailman/listinfo/r6rs-discuss
