[Simh] BLISS and C

Rich Alderson simh at alderson.users.panix.com
Mon Jan 29 16:28:59 EST 2018


> From: Paul Koning <paulkoning at comcast.net>
> Date: Mon, 29 Jan 2018 13:33:30 -0500

>> On Jan 29, 2018, at 12:05 PM, Clem Cole <clemc at ccc.com> 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


More information about the Simh mailing list