[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

remaining questions & remarks (2)



My comments on the "remaining questions" and a few other things:

I. I second Chris Haynes's comments on the title "R^3RS..".  It is not only 
too cutesy, but also suggests an aura of impermanence:  these guys are going 
to keep going until....

II.  Kent Dybvig should be an author, on the same basis as Kent Pitman.

Comments on the numbered issues:

1. (a) leave BEGIN essential, SEQUENCE optional.

2. (b) flush <?, etc.

3. (b) flush both REC and NAMED-LAMBDA.  I feel very uneasy, however, about 
the overall status of special forms, both system- and user-supplied.  I will 
be very unhappy if I can't have a conforming Scheme that happens to have a 
REC.  I suspect that this situation merely reflects our lack of understanding 
of this issue.

5. Flush the possibility of parallel or interleaved argument evaluation.

7. Yes, a port must be a port forever, else what's an object for?

9. Sure, use PHASE (suppress gratuitous incompatibilities)

10. Keep 2-arg ATAN.

11. Include PROCEDURE?, and make it be true of continuations.  I would also be 
happy with the name APPLICABLE?, though I prefer PROCEDURE?.  I strongly 
oppose the name CLOSURE? .

12. (a) 2-argument IF should return the value of the 2nd arg if the first is 
true.  (when pred exp) is OK too.

13. Flush (define ((((a b) c) d) e) ...)


18. DEFINITELY keep Clinger's description of variable binding.  It's the only 
hope of sanity.  As Dan pointed out, Scheme is closer to Algol than it is to a 
functional language, and that's a good bit of why it's useful.

19. I vote for Chris Strachey.  Church was still alive the last time I looked. 
 Curry was the one who died, but he had not thought much, so far as I know, 
about the computational implications of his work (even though he did some 
numerical analysis on the ENIAC in 1944-46, see Seldin & Hindley, "To H.B. 
Curry..." 1980, p. x).  I think Strachey's work, as amplified and expounded 
through Scott, Stoy, Milne, etc., is a far more direct intellectual source of 
our work (as expounded through Scheme) [the "our" here meaning the Scheme 
community, not just me.].

20. For call-by-name, how about Algol? "This is distinct from the situation in 
languages such as SASL or Algol 60, where arguments are passed by name, so 
that an argument expression is not evaluated unless its value is needed by the 
procedure".  This sentence needs to be careful not to confuse call-by-name 
with call-by-lazy or other similar things.

21. I vote for one-based section numbering.  I think zero-basing is cutesy.  
Also, if we are going to copy the Algol 60 typography, then sub*section 
numbers should always be terminated by a period e.g.,

4.5.3.1. If statement. .... (Algol report, page 10).

23. I vote to keep the historical note about CATCH being provided by a 
procedure, since Scheme IS (so far as I know) the first language to do this.

Mitch Wand