8 comments

[ 3.5 ms ] story [ 29.5 ms ] thread
Most of the work of my PhD thesis was done in BCPL. I was fluent in that when I switched to it from Pascal in 1985.

I using Pascal (which I'd learned in my undergraduate CS course in 1980) to write a game to play CoNeutron (although it was called Neutron then) for a competition, when I found some bizarre behavior. I tracked down a bug in the compiler and duly reported it. It was ignored, of course (compiler bugs are never compiler bugs, but are always bugs in the users program - didn't you know?) so I made an appointment to see Martin Richards.

I provided a 10 line program that demonstrated the bug, he ran it in the system level debugged, and confirmed it. He then said - "Well, that won't get fixed, why don't you use BCPL instead?" A naive translation into BCPL gained me a factor of 10 in performance, and I was hooked.

Oh, and I won the tournament. Which was nice.

I later "progressed" to C, but still miss BCPL. It had it awkwardnesses, but it had a certain charm.

I once had the pleasure of building the BCPL compiler for the GP2X gaming platform, just so I could run the amazing EDSAC simulator that comes with the BCPL package. I kept thinking, the whole time, that this language BCPL was like an old 70's classic automobile with fine leather trim and air conditioning .. sure the mileage probably wasn't that great, but there was just so much style in the trimmings .. ;)
Just for the record (since I have recently stumbled upon and read up on the BCPL stuff): Martin Richards web site at the University of Cambridge contains valuable resources on BCPL (http://www.cl.cam.ac.uk/~mr10/index.html), including (relatively) recently updated manuals.
I always find it amusing that C - the language which pretty much runs everything nowadays - still has broken precedence for the &/&& operators because people didn't want to break backwards compatibility when there were a handful of thousand-line programs written in it...
There is a quote like that for make - they were going to fix the spaces/tab thing but by then there were several dozen users
Its easy to make fun of now, but consider the annoyance it would have caused at the time, when it wasn't already as popular as it is today.

Languages have died in obscurity for less.

Reading this I immediately turned to my bookshelf to confirm that my K&R book was still there.
It's still there - you just have to be careful because copies of K&R can eat other language books left in range.