
The BCPL Reference Manual (1973) [pdf] - ingve
http://bitsavers.informatik.uni-stuttgart.de/pdf/bbn/tenex/TenexBCPL_1974.pdf
======
jerrysievert
Thanks for posting this - BCPL was an integral part of the Amiga, and
influenced many decisions on how it was implemented.

Coming from a C background, it was sometimes confusing, but it was a
fascinating look into a completely different world at the time.

------
_kst_
An earlier version of the BCPL manual, from 1967, can be found here:

[https://www.bell-labs.com/usr/dmr/www/bcpl.html](https://www.bell-
labs.com/usr/dmr/www/bcpl.html)

via the late Dennis Ritchie's home page.

------
nickpsecurity
Seeing C's predecessor in all its glory leads me to drop the obligatory
reference:

“Then Dennis and Brian worked on a truly warped version of Pascal, called “A.”
When we found others were actually trying to create real programs with A, we
quickly added additional cryptic features and evolved into B, BCPL, and
finally C. We stopped when we got a clean compile on the following syntax:

for(;P("\n"),R=;P("|"))for(e=C;e=P("_"+( _u++ /8)%2))P("|"+(_u/4)%2);

“To think that modern programmers would try to use a language that allowed
such a statement was beyond our comprehension! We actually thought of selling
this to the Soviets to set their computer science progress back 20 or more
years. Imagine our surprise when AT&T and other U.S. corporations actually
began trying to use Unix and C!"

“In any event, Brian, Dennis, and I have been working exclusively in Lisp on
the Apple Macintosh for the past few years and feel really guilty about the
chaos, confusion, and truly bad programming that has resulted from our silly
prank so long ago.”

EDIT: I forgot to reference B in this. It was BCPL -> B -> C. Doesn't make it
better, though. ;)

------
jacquesm
BCPL ran on the BBC micro and it was what eventually got me into C.

[http://www.computinghistory.org.uk/userdata/images/large/PRO...](http://www.computinghistory.org.uk/userdata/images/large/PRODPIC-9770.jpg)

~~~
teh_klev
I had the Acorn BCPL cassette as well for my beeb circa 1984. To be honest I
never really did much with it preferring instead to learn 6502 assembler (I
wrote a modem controller sideways ROM for use with my home made BBS app).

------
dboreham
I worked for two companies that made extensive use of BCPL. I also had an
office next to Colin Whitby-Strevens for a while. The BCPL book was actually
thicker than K&R, but was printed on more stout paper stock, and of course
included a listing of the compiler source ;)

------
kjs3
Martin Richards still maintains a freely available BCPL compiler you can get
from his web site.

[http://www.cl.cam.ac.uk/~mr10/index.html](http://www.cl.cam.ac.uk/~mr10/index.html)
[http://www.cl.cam.ac.uk/~mr10/BCPL.html](http://www.cl.cam.ac.uk/~mr10/BCPL.html)

~~~
cpeterso
I'm surprised no one has created a BCPL front end for LLVM. The grammar is
probably pretty straightforward to implement.

~~~
kjs3
I always thought BCPL would be a pretty decent language for the 8-bit
generation (Z-80, 6502, 6800). I know something like that existed at the time,
it didn't get as popular as maybe it could have.

