> From: Paul Koning <[email protected]> > Date: Mon, 29 Jan 2018 13:33:30 -0500
>> On Jan 29, 2018, at 12:05 PM, Clem Cole <[email protected]> wrote: >> ... One can argue, why did Ken not just build something more like BCPL >> instead of B? I can not say, maybe the brevity of { } from PL/1 was more >> attractive than the Algol BEGIN/END style? > PL/I has begin/end as ALGOL does. I don't know where { } came from, but it > isn't from PL/I. What perhaps did come from PL/I is ; as terminator rather > than separator. I was also going to point out that neither {} nor [] exist in (System/360 era) EBCDIC, so could not have been used in PL/1. PL/1 (or PL/I, to use the later naming convention) has both BEGIN/END and DO/END, with different effects. I got a long lecture from an office mate once about a program which was using BEGIN/END where DO/END was preferable, because BEGIN blocks actually create a new context, with internal/external scope details, while DO blocks do not create a new context. (The thing is, I was writing in Pascal, not PL/I, where begin/end works like PL/I's DO/END, but the rant was interesting enough that I let him run to competion before pointing that out to him. Was that behavior new to Pascal, or inherited from Algol 60?) Rich _______________________________________________ Simh mailing list [email protected] http://mailman.trailing-edge.com/mailman/listinfo/simh
