There was a
'B' as well. I don't recall hearing about a 'A'.
Dwight
There was a predecessor to C, that was mostly theoretical,
and rarely implemented named BCPL. (Fred)
From this side of the Atlantic things look slightly
different - as usual :-)
"in the beginning" there was CPL
Designed as an "all purpose" programming language (in the same way as
PL/I).
As far as I can tell only one implementation (and that incomplete?)
existed on the Atlas. It was "a byte too far" in terms of the capabilities
of the time. Could well be described as "mostly theoretical and rarely
implemented".
A subset of this (BCPL) was designed and used as an implementation language
for CPL.
It became a (reasonably) widely implemented and used language on British
computers of the era (because it was easy to port). So not "rarely
implemented". Its real failing was an assumption of word (rather than
character) addressing.
B was a reworking of BCPL that was more in the form of a PL/I subset.
As far as I am aware it was only implemented on the GE/Honeywell 36-bit
machines but was a popular implementation language for those. We used it on
our GCOS III system - I think that we only wrote 3 or 4 modules in GMAP
(thank heavens!)
C was essentially a reworking of B to be suitable for character-addressed
machines.
I had assumed that the first C compiler had been written in B - I am pleased
to be corrected. Was the assembler version written directly as such or as
hand-translated pseudo-code?
Andy