17.7 C
New York
Thursday, September 29, 2022

A quick glance at the history of C programming languages – TechTarget

Getty Images
In an era with other available general-purpose programming languages, such as Java, Python and Ruby, C and its various .NET relatives remain important languages for developers. Despite its age, developers worldwide still commonly work in C, C#, C++ and Objective-C to create sophisticated portfolios of modern applications.
This article takes a quick look at the storied history of the C programming language and its role in high-level software development efforts. By understanding its history, developers can garner the context necessary to understand what makes C-based languages useful for embedded systems management, dynamic data processing and other complex programming projects.
The history of the C programming language started with its use to move kernel code within AT&T’s original Unix operating system. The goal was to perform the process of moving a kernel, or core, of an application using as few lines of code as realistically possible.
Ken Thompson, a Bell Labs employee, had already endeavored to create a programming language for the Unix platform that could accomplish this goal. This resulted in a modified version of the Basic Combined Programming Language (BCPL) that he called B, which featured characteristics such as generalized assignment operators for calculations and a simplified syntax.
Another Bell Labs employee, Dennis Ritchie, eventually built upon Thompson’s work to create C in 1972, focusing on addressing some of the weaknesses in B’s semantic model, such as its clunky character-handling mechanisms, as well as its slow threaded-code approach. Eventually, the language carried the fundamentals of the existing BCPL and imbued it with its own type structure.
Although development of the Unix OS began in 1969, its code was rewritten from assembly language to C in 1972. C’s design as a Unix system implementation language is documented in a Bell Labs paper titled, “The Development of the C Language.”
By early 1973, the modern C language was complete, and its compiler was powerful enough to warrant implementation across various software systems within Bell. In time, the C-based Unix OS garnered use across research-oriented academic and government organization environments.
In 1978, Dennis Ritchie and Brian Kernighan published the book The C Programming Language, which served as a common source of reference for C. This period of C’s history is often referred to as the K&R version of C, in reference to Kernighan and Ritchie.
This new iteration of C boasted innovative new development features, such as:
In 1983, the American National Standards Institute (ANSI) established the ANSI X3.159-1989: Programming Language C, known as ANSI C. Another successive standard of the language was released and called ISO C (or C90). Successive modifications occurred in 1995, 1999 and 2011, with each one called C95, C99 and C11, respectively. C11, which took about five years to complete, added another swath of innovative features to C and its libraries, such as:
Today, the C programming language powers leading technologies encompassing everything from operating systems to embedded systems. C typically carries a manageable memory footprint, as well as reasonable runtime resource requirements. It runs close to the hardware, is highly portable, and features a deterministic approach for using resources that suits modern applications.
To illustrate, here is a list of some of C’s most common use cases:
C is still a preferred language when it comes to working with system kernels and device drivers. Kernels of Linux, macOS, iOS, Microsoft Windows and Android operating systems are all examples of places where C programming has found a home.
Databases such as MySQL, PostgreSQL and Microsoft SQL Server prominently feature codebases written in C. For example, even though the Oracle database was written in assembly language upon its conception in 1977, it was eventually rewritten in C for the release of Oracle v3 in 1983.
Many of the compilers and interpreters used in newer languages like Perl and Python operate using C-based approaches, because the association with C often makes the code more comprehensible for the average machine.
Many of the drivers in everyday home and personal electronics, such as alarm clocks, remote controls, coffee makers and microwaves, are programmed in C. Even automotive features like dashboard displays, childproof locks, keyless entry systems, airbag controls and heated seats are often coded in C, thanks to its historic compatibility with machine-based hardware.
Many application suites used for developing 3D movies are built using C and C++, due to the need to process large amounts of data and perform a large number of calculations every second.
Team structure and culture should be a primary focus during any shift to Agile principles and methodologies.
In this Q&A, GFT CTO Dean Clark details how his company’s green coding certification program is bringing benefits beyond …
Halfway through 2022, interest in low-code/no-code platforms is not slowing down. Experts say the developer shortage is one of …
SaaS licensing can be tricky to navigate, and a wrong choice could cost you. To get it right, examine the different types of …
Walmart built its own cloud platform and tied it to two public cloud providers, creating a multi-cloud architecture that saved …
FinOps promises to help organizations gain more value from their technology spending, especially in the cloud. Do you have the …
Unlike Java, Python or C, HTML is not a programming language because it lacks variables, conditional statements or iterative …
Looking for an IT job that doesn’t involve coding? These eight tech roles are important in any organization, with no programming …
What’s the difference between Agile and Scrum? What are their similarities? Learn how to compare and contrast these two popular …
All Rights Reserved, Copyright 2019 – 2022, TechTarget

Privacy Policy
Cookie Preferences
Do Not Sell My Personal Info


Related Articles


Please enter your comment!
Please enter your name here

Latest Articles