On 8/13/07, Aubrey Jaffer <[EMAIL PROTECTED]> wrote:
> In the R5.97RS introduction:
>
>   Scheme demonstrates that a very small number of rules for forming
>   expressions, with no restrictions on how they are composed, suffice
>   to form a practical and efficient programming language that is
>   flexible enough to support most of the major programming paradigms
>   in use today.
>
> This was true of R3RS and R4RS, but not for R5RS and R5.97RS.  In R3RS
> and R4RS there were a small number of rules for forming expressions:
>
>   DEFINE, QUOTE, LAMBDA, IF, SET!, BEGIN, COND, AND, OR, CASE, LET,
>   LET*, LETREC, DO, DELAY, QUASIQUOTE, and combinations.

Why doesn't it suffice to define a library that exports only DEFINE,
QUOTE, LAMBDA, IF, SET!, BEGIN, COND, AND, OR, CASE, LET, LET*,
LETREC, DO, DELAY, and QUASIQUOTE?

Arguably the draft defines a language with even fewer rules for
forming expressions, namely combinations and self-evaluating syntactic
data (numbers, booleans, etc).  If you want more forms, you have to
import them explicitly.

David

_______________________________________________
r6rs-discuss mailing list
[email protected]
http://lists.r6rs.org/cgi-bin/mailman/listinfo/r6rs-discuss

Reply via email to