BCPL is a programming language with a relatively simple syntax and a single data type, the word (generally aligned with the architectural word in the system in which BCPL is running). Several important products (the TRIPOS operating system for Amiga, for example) have been written partly or entirely in BCPL.

A stripped down variant of BCPL called B was one of the first high-level languages for the Unix operating system on the PDP-7. A development of B called C was used in porting Unix from the original 18-bit PDP-7 architecture to the PDP-11 and other architectures, and has had some commercial success since then.

(There was at one point in the late 1970s a joking controversy in the C world as to whether the successor to C should be called "D"--that is, alphabetically named--or "P", as that is the next letter in the name of the ancestral language BCPL. ;-)

The Wikipedia article on BCPL has details on its history. Rich Alderson (RichA@Vulcan.com)Not speaking as the forum moderator

The best place to source BCPL for a KL10 is Essex university , they had a large KL installation, It was the mainframe for the whole university and BCPL was used as the main systems programming language along side Macro 10.

I know they also sent a copy to Birmingham University to run on their DecSystem 20, ie KS10 Processor.

If any body wants it Ive ported the original BCPL Kit to a PC, I did have a version on floppy that ran native 86( back in 1987), but cant read that anymore, but have ported the intcode interpreter to C running 16, 32 and 64 bit. I started last year, it runs and I am adding floating point, so I can embed it in some applications.

Intcode only has 8 instructions and is perfect for a PDP 10 as its based around word addressing, not the pesky bytes.

Originally intended for writing compilers for other languages, BCPL is no longer in common use. However, its influence is still felt because a stripped down and syntactically changed version of BCPL, called B, was the language on which the C programming language was based. This important fact led many C programmers to humorously issue the backronym Before C Programming Language.[1] BCPL was the first brace programming language, and the braces survived the syntactical changes and have become a common means of denoting program source code statements. In practice, on limited keyboards of the day, source programs often used the sequences $( and $) in place of the symbols { and }. The single-line '//' comments of BCPL, which were not taken up in C, reappeared in C++, and later in C99.

BCPL was a response to difficulties with its predecessor Combined Programming Language (CPL), created during the early 1960s. Richards created BCPL by "removing those features of the full language which make compilation difficult". The first compiler implementation, for the IBM 7094 under Compatible Time-Sharing System (CTSS), was written while Richards was visiting Project MAC at the Massachusetts Institute of Technology (MIT) in the spring of 1967. The language was first described in a paper presented to the 1969 Spring Joint Computer Conference.