| • Science | • People | • Locations | • Timeline |
The language is clean, powerful, and portable. It proved possible to write small and simple compilers for it and was therefore a popular choice for bootstrapping a system. Reputedly some compilers could be run in 16 kilobytes. Several operating systems were written partially or wholly in BCPL (for example, TRIPOS or Amiga Kickstart). A major reason for BCPL's portability lay in the structure of its compiler. It was split into two parts. The front end parsed the source and generated O-codeThe O-code machine is a virtual machine that was developed by Martin Richards in the late 1960s to give machine independence to BCPL, the low-level forerunner to C and C++. The concept behind the O-Code machine was to create O-code output (O stands for Ob for a virtual machineIn general terms, a virtual machine in computer science is software that creates an environment between the computer platform and the end user in which the end user can operate software. Specifically, the term virtual machine has several distinct meanings; the backend took the O-code and translated it into the code for the target machine. Soon afterwards this became fairly common practice, cf. PascalPascal is one of the landmark computer programming languages on which generations of students cut their teeth and variants of which are still widely used today. TeX and much of the original Macintosh operating system were written in Pascal. The Swiss comp or JavaJava is an object-oriented programming language developed primarily by James Gosling and colleagues at Sun Microsystems. The language, initially called Oak (named after the oak trees outside Gosling's office), was intended to replace C++, although the fea, but the Richards BCPL compiler was the first to define a virtual machine for this purpose.
The language is unusual in having only one data type: a wordWord can mean one of several things: In a linguistic sense, a unit of speech or writing that symbolizes or communicates a meaning, consisting of one or more morphemes. Microsoft Word a word processor produced by Microsoft as part of its Office software su (a fixed number of bits, usually chosen to align with the architecture's machine word). The interpretation of any value was determined by the operators used to process the values (so, + added two values together treating them as integerThe integers consist of the positive natural numbers (1, 2, 3, …) the negative natural numbers (−1, −2, −3,. and the number zero. The set of all integers is usually denoted in mathematics by Z (or Z in blackboard bold, ), which sts; ! indirected through a value effectively treating it as a pointer). In order for this to work, the implementation provided no type checking.
It is reputedly the language in which the original hello world program was written. The first MUD was also written in BCPL [1].
In 1979 implementations existed for at least 25 architectures; in 2001 it sees little use. Its successor, C, is now the language of choice for systems programming.
The design of BCPL strongly influenced B which in turn influenced C.
The philosophy of BCPL can be summarised by quoting from the book BCPL, the language and its compiler: