The Language of the Future
August 25, 2023
The tech era has taken the world by storm, digitizing almost everything imaginable, able to be compressed to fit in the palm of your hand. Ranging from bizarre gadgets such as smart toilets to complex data simulations that attempt to predict the stock market, technology's capabilities are practically unbounded. Throughout the last 200 years, technology has made leaps and bounds, all with the development of computer languages used to increase efficiency in a myriad of tasks.
In order to understand how computer languages have reached the capabilities they possess today, it is important to examine where computing began. In 1821, Charles Babbage invented the difference engine, which would perform calculations and assist in mathematics involving polynomial functions (e.g. x4+3x3-5x2+4). It was essentially an early form of the calculator. Its importance lay in its vision of a computational system: instructions were given to it and it would perform a task. A great drawback to this system was the need for physical motion to give instructions which would not be improved upon until 1945, when the first fully electronic calculator, the ENIAC, was created. This revolutionary advancement to computers combined all computational functions of previous computers into a single unit. The process of using this computer was still extremely tedious however, requiring switches and rewiring to reprogram the machine in order to perform different calculations. At this point, John Von Neumann, who later became known as one of the greatest minds of the twentieth century, developed two of the fundamental concepts of computer science. One was the idea of hardware not having to be rewired and to be relatively simple in manipulating. This would be possible with very complex instructions that would then control the hardware manipulation process. The other idea of his was implementing logical statements such as “if”, “else”, “for”, etc. After much revision and polishing to programming languages and the addition of the compiler, which eliminated the need of physical programming, languages continued to make gradual improvements from their predecessors.
The next major concept to change the programming landscape was object oriented programming. These types of languages allowed for objects, which could possess different attributes and store various datum allowing for a more broad approach to the manipulation of information and input. This gave rise to the programming language C++, based on its predecessor C with the addition of object oriented programming. Many modern programming languages are based off of these two giants of the computer science world and have allowed for the development of programs like Java and Python, today’s most widely used and known programs that can essentially code and perform any task. Programming languages still have quite a long way to go to reach the pinnacle of their capabilities, yet, they have produced some of the greatest and most quirky creations of humankind’s history.