C and C++ Programming Languages

In 1969, Ken Thomson and Dennis Ritchie developed the B language in the Bell laboratories, an imperative, procedural, non-typed language, designed to implement non-numerical, recursive and independent applications of the machine where they were to be executed.

With the appearance of more modern architectures (from Digital‘s PDP-11 in 1970), the absence of types began to be seen as a problem and Denis Ritchie began to make changes in the language to, initially, introduce the types of data in 1971. These modifications continued in the following years, resulting in a “new B” language that later became C, which allows rewriting the UNIX kernel for PDP-11 (originally developed in assembler like all operating systems up to that time ). Starting with UNIX version 2, both the C compiler and some utilities were included in the distribution and from the 70s and 80s of the 20th century on a wide variety of minicomputers, mainframes and microcomputers such as the IBM PC.

Apart from its use in the implementation of operating systems, system programming, its efficiency means that compilers for other programming languages ​​are usually programmed in C (such as Python, Perl or PHP). It is also present totally or partially in intensive calculation applications such as Matlab or Mathematics. On the other hand, its availability makes it considered as a language for portability.

Seeking to maintain the efficiency and flexibility of C, Bjarne Stroustrup extended C in 1979 seeking to include programming features from other languages ​​(Simula) and allow object-oriented programming. First standardized in 1998, C++ is as widespread as C, being used from the video game industry to the development of performance-critical applications (such as telephone routing or spacecraft control software).

Leaving aside its more known extensions C++ and Objective-C, the influence of C is very evident in other languages ​​such as AWK, PHP, Java, JavaScript, D or C#, which deliberately use its “appearance”. Today (2021), C and C++ occupy the 1st and 4th positions respectively and in the TIOBE ranking of popularity of programming languages, C is the most widely used language for software programming and is considered the lingua franca of the open community source.

C


Born: 1972
Versions: Kernighan & Ritchie (1978); ANSI C (1989); ISO C90 (1990); C99 (2000)
Influences of: B
Influences: C++ (1979); Objective C; C#; Java; Python; Perl; ADA 95; Csh;

C++



Born: 1985
Versions: ISO C++ (2003); C++0x (2011); C++14 (aka C++1y, 2014)
Influences of: C; Ada; Algol 68; Modula-2; Simula; Smalltalk
Influences: Ada 95; C#; Java; Perl; Python;