BCPL in the new millenium (was: Proposal3: Make $_ avalididentifier cha...
JArchibald at aol.com
JArchibald at aol.com
Fri Jun 2 19:54:13 UTC 2000
=> 6/2/00 3:25:56 PM, Alan.Kay at disney.com =>
<< BTW, the really interesting language back then was BCPL's "god" -- called
CPL -- originally for: Cambridge Programming Language (later "Combined Prog
Lang"), with many of the major design ideas by Christopher Strachey and Peter
Landin. >>
Alan,
I don't think CPL ever really flew (it could only walk fast). I do think it
was one of the most well thought-out language efforts we have ever seen
(Algol 68 and Ada supporters notwithstanding). I do believe Dana Scott had
a hand in this, as I always heard of Scott-Strachey mentioned as if they were
joined at the hip. I remember substantial discussion on the principles put
forth by Scott and Strachey (whose books every programming language designer
should know about, along with Landin's work).
Martin Richards was of course the prime mover (and as far as I have been able
to determine, the only mover) behind BCPL (Basic Combined Programming
Language), and as far as I know this was used in many efforts in Britain
also, notably at St. Andrews was it formed the back-bone of SASL, a
functional extension (Combinatory Logic and all) of BCPL. BCPL was
essentially CPL in a type-less version, all the control logic and scoping was
there; it just introduced a very simple cellular model for memory (which few
have done better). I also think (not sure here) the abbreviations (+=, =+,
etc) began with BCPL, and were not in CPL.
Re the comment by others on the $( and $). At IBM Research we always used a
pre-process front-end that I threw together that ate '[' and ']' and emitted
the ubiqitous $( and $) (and a few other trivial such things). So our BCPL
program looked a lot like Smalltalk programs do today, with the 'blocks' of
BCPL being the 'blocks' of Smalltalk.
I remember the first time I read a Smalltalk program, from one of the orange
covered research reports from PARC. When I saw the syntax for the block, I
said to myself, "Well, they got that part right, at least." :-)
Cheers,
Jerry.
More information about the Squeak-dev
mailing list
|