Young Persons Guide to BCPL Programming on the Raspberry Pi
Posted: Mon Aug 27, 2012 7:23 am
Martin Richards has a version of BCPL at his home page (http://www.cl.cam.ac.uk/~mr10/index.html) and has put excellent documentation for the RaspberryPi at http://www.cl.cam.ac.uk/~mr10/bcpl4raspi.pdf.
Whilst primarily of historical significance today, BCPL was a tour de force for bootstrapping compilers and operating systems in its day.
The chain of influence of the language itself is roughly: Algol -> CPL -> BCPL -> B -> C -> ...
(BBC Basic takes its indirection operator (addr!offset) from BCPL.)
The legacy of its pioneering use of O-Code / Virtual Machine targeting can be seen all around us today with the popularity of CLR and JVM.
The pillars of BCPL were a pragmatic cleanliness and simplicity combined with the concept of untyped variables but typed operators.
It is an excellent language for someone who wants to learn about low-level programming concepts without getting caught up in the complexities of assembler or C++.
Whilst primarily of historical significance today, BCPL was a tour de force for bootstrapping compilers and operating systems in its day.
The chain of influence of the language itself is roughly: Algol -> CPL -> BCPL -> B -> C -> ...
(BBC Basic takes its indirection operator (addr!offset) from BCPL.)
The legacy of its pioneering use of O-Code / Virtual Machine targeting can be seen all around us today with the popularity of CLR and JVM.
The pillars of BCPL were a pragmatic cleanliness and simplicity combined with the concept of untyped variables but typed operators.
It is an excellent language for someone who wants to learn about low-level programming concepts without getting caught up in the complexities of assembler or C++.