[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
begin
Date: Wed, 2 Apr 1986 12:57 EST
From: CPH%OZ.AI.MIT.EDU at XX.LCS.MIT.EDU
I don't like the idea of extending BEGIN to allow definitions. ALGOL
needed that because it didn't have LET; we don't have that excuse.
Then perhaps BEGIN should be caled something else... maybe SEQUENCE or
SEQUENTIALLY... I thought it got its name from Algol 60 and therefore
should be as much like Algol 60's begin blocks as possible... rememeber
that BEGIN in Algol 60 is primarily a binding construct, not a
sequencing construct so I thought there was a mismatch of name and
functionality here, one or the other should change... don't anyone
messages that I send on April 1 seriously. This issue has been beaten
to death and it was (& is) in poor taste for me to inflame old wounds
again.
I'm going to leave BEGIN as it is. Rather than put SEQUENCE in an
appendix, I and some others at MIT prefer that it be left in the main
part of the report as a non-essential special form, and we want to flush
the request that it "not be used in new code". (Today is April 2.) I
hope this doesn't bother anyone too strongly.
Apparently there's no consensus on any change to local DEFINE, so I'm
going to leave it as it is the the RRRS: all the definitions must appear
at the beginning; local defines are sugar for LETREC; LETREC binds
everything at the top, and does the right-hand side computations and the
assignments in an indeterminate order; LETREC permits arbitrary
expressions on the right-hand sides; a reference to any of the variables
during the evaluation of any of the right-hand sides is an error.
Jonathan
- Follow-Ups:
- begin
- From: Kent M Pitman <KMP@SCRC-STONY-BROOK.ARPA>