The Babbage Coding Language
Programming is a process of writing code — an algorithm — that tells a computer what to do and the computer executes it. Programmers use a programming language, which is a form of notational language that allows communication between the programmer and computer. There are different types of programming languages: low-level, high-level, and middle level. Low-level language is machine-dependent and is written in direct binary code. Some examples include assembly and machine code. The high-level programming language is made to be user-friendly and easy to read by humans, it is most like human language and needs a compiler to convert it into machine language. Python and Java are two examples of this type. The middle-level programming language is in between low-level and high-level language. It being user-friendly and close to both machine and human language.
Babbage is a high-level coding language that is made specifically for a series of minicomputers (the GEC4000 series) created in the 1970s. Many computers today run using modern languages such as Java, Python, C++, etc. Those languages have continuously been developed and built on top of older programming languages before it. The Babbage programming language — like the Pascal and Ada programming language — is one of the pioneer bases for many of the functions and objects in modern programming today. The Babbage programming language played a critical role in the development of the GEC4000 series minicomputers, and I will further explain what these computers are.
The GEC4000 Series Minicomputers
The GEC4000 Series was a line of computer series created by an English company called GEC Computers Limited in 1973. It was based in the United Kingdom. The company was previously called Elliot Automation and then Marconi Elliot Computer Systems until it was renamed GEC Computers Limited when it was bought by the General Electric Company (GEC). The General Electric Company is already well known in the UK for its industrial automation efforts and production in World War 1, as well as in World War 2.
The minicomputer itself is not a mini as it sounds. In actuality, it is fairly large and bulky, almost as tall as a refrigerator. The main focus of the GEC4000 series was to appeal, garner more attention, and sell to the public market since portable home-use computers were not common in regular households during the time. Thus, GEC Computers Limited would bountifully profit and be more well known. The extensivity of its hardware and reparations for this computer allowed for the improvement of new computers in the future.
The Babbage programming language was one of the main high-level languages used in the making of its software programs and operating system for that series of computers alongside other languages. The GEC4000 series uses an operating system called OS4000, which is proprietary to GEC Computers Limited company in 1977, the OS was written in Babbage as well as the operating systems before it. Before the OS4000 operating system, the GEC4000 series computers primarily used operating systems called COS and GEC DOS in 1974. The computers were mainly used in universities. The GEC Computers Limited company were a very reputable company in England and are well known for good maintenance on their computers. The Babbage language was also a respectable language, making the GEC4000 series minicomputers quite well known in history.
Why is it called Babbage?
The language itself was named after Charles Babbage who was born in 1791 and died in 1871, London, England. He was a graduate from Cambridge University who graduated with a specialization in mathematics. He is also a renowned computer pioneer and famous inventor, and he is most notable for creating the first automatic computer called the ‘Babbage Engine’, more well known as the Difference Engine.
This computer was far from the modern, modular designs available today. The ‘Babbage Engine’ — like many computers back then was big. It consisted of 8,000 parts, weighed 5 tons, and was around 11 feet long. During the time, steam power and industrial manufacturing were prominent, hence the steampunk-like design of his analytical machine. The Difference engine is a rudimentary physical design of how programming software looks and operates like today, it was fully programmable and automatic. Charles Babbage did not necessarily create the programming language; it was simply named after him for his considerable feats in computer history.
Designers who created the Babbage programming language according to Tony Karp’s article in 1981, were funded by the Department of Sanitation to replace the Ada programming language which was beginning to become obsolete. Babbage — in comparison to Ada — was highly extensive and many users were able to customize the size of it.
What Does Babbage Code Look Like?
Babbage uses many familiar simple structures and statements that people often see today in many other modern languages such as Python, Java, C++, etc. During the time, simple structures were novel. Some examples of statements that are common today are WHAT IF, OR ELSE, etc. There are some statements and loops in the Babbage programming language that are uncommonly seen today which at first glance maybe a bit silly. Some such as “DIDN’T DO, CAN’T DO, JUST-IN-CASE, HOPELESS CASE, BASKET CASE, etc.” to name a few.
Comparing Babbage Code to Modern Code
The block-like structure of code in Babbage is also prominent in modern coding. Here is an example statement structure in Babbage by Tim McDonough:
The alignment and nested structure of this code are very similar to many high-level languages such as Python. An example of a simple Python if-else statement would look like this:
The indentation, alignment, and structure of this code are like the Babbage code above.
Is this Language Still Used?
Unfortunately, like the GEC4000 minicomputers and its obsoletion due to the development of modern technology, Babbage is not used as frequently today as it once was. However, there are many handbooks and manuals online to reference with ongoing support for people who still want to maintain a GEC4000 series minicomputer. Since modern languages such as Java, Python, and C++ more are similar to Babbage’s statement structures and functions. Babbage’s legacy continues to live on through these newer platforms.
Referring back to modern high-level languages. Unlike Babbage, which was limited specifically to the GEC4000 series minicomputers due to its propriety, there are a variety of modern languages that can be used almost anywhere today. People are constantly creating new programs which are used specifically for different things such as programming video games, developing websites, software, databases, etc. Many of these languages are very similar in structure to each other as is Babbage. In turn, many programmers learn a variety of high-level languages because of the diversity of these applications of languages in their programs.
The Importance of Babbage
Though unused now, the use of the Babbage programming language and the other several predeceasing languages before it was able to pioneer the modern coding languages of today. It is important to appreciate the building blocks of what code is now. Programming is used everywhere and in today’s society, with everyone using the internet and the widespread availability of job openings related to technology. Coding languages are constantly being greatly improved upon. Who knows what awaits in the future?