What is B programming language?
B is a computer programming language designed by D. M. Ritchie and Ken Thompson at Murray Hill, New Jersey. D. M. Ritchie and Ken Thompson, both worked together at Bell Labs(Murray Hill). They got success in making B programming language actively supported and documented on the H6070 TSS system in 1969. This language was developed primarily for non-numeric applications such as system programming that included complex logical decision-making and processing of integers, bit strings, and characters.
The B programming language was derived from BCPL(Basic Combined Programming Language). The name of B programming language may be a diminution of BCPL. B was created for recursive, non-numeric, applications that are independent of machines, such as system and language software.
History
Initially, Ken Thompson and Dennis Ritchie were working on a programming language that was mainly based on the BCPL language. Thompson wanted a language that could be used in the Multics project. Essentially, B was the stripped component of the BCPL system. Thompson felt that he could make a modified language from the BCPL that could be fitted within the memory capacity of the minicomputers of the time. The BCPL to B transition mostly involved changes to reduce the quantity of non-whitespace characters in a typical program. Further, the typical ALGOL(Algorithmic Language) – like syntax BCPL was heavily changed in the process, such as the:= and = operators which were replaced with = for assignment and == for equality test.
The arithmetic assignment operators were invented for B, using x =+ y to add y to x. The increment and decrement operators (++ and –) were also added for B. The main purpose of these operators is to determine whether the value is taken prior or post alteration of the operand. These innovations were not introduced in the earliest versions of B. These operators were created for the auto-increment and auto-decrement address modes of the DEC PDP-11. It was a great success in the programming world as there was no PDP-11 at the time.
The B programming language works more precisely than BCPL as it has only one data type. It was treated as an integer by most of the operators (e.g., +, -, *, /) but some other operators treated it as a memory address. In many other ways, the B language resembled a lot like an early version of C. Some library functions of B are similar to the standard I/O library functions of C.
After making B language actively supported, the implementations for the DEC PDP-7 and PDP-11 minicomputers using early Unix were required. For the earliest PDP-7 implementation, a compiler was written by Ritchie using TMG(early compiler definition language) that produced machine code. In 1970, the PDP-11 was acquired; an assembler, dc, and threaded code was used for the port. The B language itself was written in B to bootstrap the operating system. The PDP-11 configuration produced the early version of yacc(a computer program for the Unix operating system). During this period, D.M. Ritchie took over maintenance.
The B language has typeless nature that means it allows a program to manipulate values in any manner, regardless of what they are. This nature of B made sense on the PDP-7 and many traditional systems but was a problem on the PDP-11 because it faced difficulty to access the character data types that were fully supported by the PDP-11 and most modern computers. In 1971, Ritchie made some modifications to the language while most prominently adding data typing for variables and changing its compiler to produce machine code. In 1972 the B language evolved into “New B” (NB) and then C.
The B programming language is almost obsolete, having been supplanted by the C language. However, it remained in use (as of 2014) on GCOS(Global Climate Observing System) mainframes, and on certain embedded systems (as of 2000) for a variety of reasons, including limited hardware in the small systems; extensive libraries, tools and licensing cost issues, etc.
B computer programming language was designed by D. M. Ritchie and Ken Thompson at Murray Hill, New Jersey.
B programming language was developed primarily for non-numeric applications such as system programming that included complex logical decision-making and processing of integers, bit strings, and characters.
For the earliest PDP-7 implementation, a compiler was written by Ritchie using TMG(early compiler definition language) that produced machine code.
In 1971, Ritchie made some modifications to the language while most prominently adding data typing for variables and changing its compiler to produce machine code. In 1972 the B language evolved into “New B” (NB) and then C.
Who designed B programming language?
For what purpose was B programming language developed?
How was PDP-7 implemented?
How did B language became C?