> Nobody in their right mind would want to learn programming in BCPL
I agree, but that's not what the author thinks:
"When a new programming language is designed it is invariably strongly influenced by languages that preceded it. One thread of related languages is:
Algol -> CPL -> BCPL -> B -> C -> C++ -> Java, indicating that BCPL is
just a small link in the chain from the development of Algol in the late 1950s
to Java in the 1980s. BCPL is particularly easy to learn and is thus a good
choice as a first programming language."
Emphasis mine.
Also,
"This document is intended to help people with no computing experience to
learn to write, compile and run BCPL programs on the Raspberry Pi in as little
as one or two days, even if they are as young as 10 years old."
So, unless I'm missing something, this document is intended to teach programming first concepts with BCPL. And it seems like it's aimed at young people, regardless of the play on words (which I didn't know, thanks!).
We've all been a young person[0], so it's easy to criticise from that angle.
However, I'd like to think the readership of HN are hacker enough to like to think that, given a desert island (with minor deps like sand and the Friday hardware fab!) and a few spare years, they'd be capable of Robinson Crusoe'ing up a personal development environment.
From that point of view, I find[1] this effort admirable: it's several hundred pages, by Martin Richards, about the port of the BCPL toolchain (language, compiler, bytecode interpreter, libraries, debugger, etc. all by Martin Richards?) to a new system (was it a new arch as well?)... by Martin Richards.
How many among us get a machine with new graphics, decide to write a flight simulator, and then —only as a minor[2] implementation detail mind you— plumb float support through our entire language ecosystem? Who needs a shaved yak when you're pursuing the buttery-smooth shaded yak?
"when I was your age all we had were 1's and 0's, and sometimes not even 0's, so we'd stay up all night xor'ing 1's to have enough for the next day..."
[1] when I did this sort of thing to pay the bills, I had someone else doing the tech writing and someone else providing toolchain and debugger sources, and it was still not a trivial lift.
[2] compare Wirth FPGA'ing up an entire homebrewed arch just so he could have a personal workstation using his favourite mouse.
I agree, but that's not what the author thinks:
"When a new programming language is designed it is invariably strongly influenced by languages that preceded it. One thread of related languages is: Algol -> CPL -> BCPL -> B -> C -> C++ -> Java, indicating that BCPL is just a small link in the chain from the development of Algol in the late 1950s to Java in the 1980s. BCPL is particularly easy to learn and is thus a good choice as a first programming language."
Emphasis mine.
Also,
"This document is intended to help people with no computing experience to learn to write, compile and run BCPL programs on the Raspberry Pi in as little as one or two days, even if they are as young as 10 years old."
So, unless I'm missing something, this document is intended to teach programming first concepts with BCPL. And it seems like it's aimed at young people, regardless of the play on words (which I didn't know, thanks!).