Computer programming and the language it runs on has a rich history dating back to the late 1880s. Since then, each language has been an inspiration for newer, easier languages for any type of programmer to use, regardless of background. Today, many companies have their own language specifically tailored to their applications, operating systems, and needs.
Computer programming had its start in the late 1800s. Eugene Kim and Betty Toole reveal in an article that Ada Lovelace was the world’s first computer programmer due to her translation and notes on a scientific paper by an Italian engineer. It became the first true computer science and rendering paper of its kind. In the years to follow, she met Charles Babbage, who created a difference engine that could be made to execute tasks by inputting mathematical equations. The two worked closely together for several years.
If you would like to learn more about Ada Lovelace, you can read about her at SDSC.edu.
Computer programming started to pick up steam in the 1940s with Konrad Zuse. According to Computer.org , Konrad Zuse invented the first programmable modern computer. In 1941, he created the Z3 which contained all the features of a modern computer. However, his program was too large to store on his 64-word memory, so he only stored values and numbers. He wrote the first algorithmic programming language called “Plankalkul” in 1946 and used this to program all his computers. He used this same programming language to create the world’s first chess-playing program.
In 1946, six women created the first all-electronic, programmable computer as part of a secret project for the US Army, stated by ENIAC Programmers website. Programming languages and tools were almost non-existent, thus there was a reliance on logical diagrams. ENIAC was run by a differential calculus equation. ENIAC stood for Electronic Numerical Integrator and Computer.
You can read more on ENIAC and the women who created it at US History.
The first programming languages cropped up in the 1950s. Most were created for business users. COBOL, Fortran, and other languages were developed by each maker to tell their computers what to do. The first Mark 1 computer programming manual was also written by Grace Hopper around this time.
COBOL stands for Common Business-Oriented Language. The National Museum of American History says that COBOL could be run on a variety of different manufacturers’ computers. COBOL was mainly used to keep track of payrolls, prepare budgets, and track property. It was quickly picked up by the Department of Defense for its easy use on almost any computer.
Fortran stood for Formula Translator and was used mainly by scientists and engineers. On IBM.com, it states that John Backus and his team at IBM created Fortran in 1957. Their objective was to create a programming language that was simpler and to open up computing to more people. The target was to focus more on the problem the person using the computer wanted to solve as opposed to the machine’s operations. This computer language is known as the first high-level programming language.
LISP, according to a paper at Stanford University, is the second oldest high-level programming language created in 1958. It was originally a practical mathematical notation for computer programs but became a favorite programming language for artificial intelligence. LISP stands for List Processor as linked lists are its major data structures and source code. It is now found in several dialects, such as Common LISP and Scheme.
According to World Information, the 1960s saw the birth of second generation computers and the beginning of the software industry. Operating systems also were used so machines could run many programs at one time.
BASIC was created in 1964 at Dartmouth College by John G. Kemeny and Thomas Kurtz and stands for Beginners All-Purpose Symbolic Instruction Code. According to BASIC for QT, Kemeny and Kurtz did not patent or protect their invention because they wanted it to be public domain. General Electric was one of the first companies to use BASIC for their machines.
CPL was to be the forerunner of C and C++ programming language. The University of Alabama states that it was created to handle programming tasks that were difficult to do with Fortran and ALGOL. However, it was a massive language, making it difficult to learn and implement.
ALGOL, standing for Algorithmic Language, is one of the several high-level languages and was used specifically for scientific computations. As stated in a brief report by the University of Michigan, ALGOL was started in the 1950s but wasn’t formalized until 1958 and progressing through reports ALGOL60 and ALGOL68. The language was designed by an international committee to be a universal language. While it never became a commercial success, ALGOL60 is the basis of many later programming languages.
By the 1970s, computer programming language was beginning to move towards a simpler and more easily used language.
Niklaus Wirth created PASCAL after he left the team that created ALGOL68. He created PASCAL to be a simple and efficient language to encourage good programming practices, gearing it towards students learning structured programming. World Library says that PASCAL was a primary a high-level programming language and was used in the early years of Macintosh computers.
C Programming also appeared in the 1970s and would later be used to write C++ and inspire C# programming language. The Linux Information Project states that C programming language was one of the most important programming languages to date. It is mostly used to create operating systems, other programming languages, and compilers. It was developed by Dennis Ritchie and was designed specifically to be powerful yet minimalistic with language suitable for writing operating systems.
C++ programming language was developed by Bjarne Stroustrup in 1983. It was designed to provide Simula’s facilities for program organization with C’s efficiency and flexibility for systems programming and was to be an easier and more enjoyable way to program, according to an article at Pennsylvania State University. C++ was created to be used with various computer programming models, such as object-oriented programming.
Perl was released in 1987 (and later revised in 1994 and 2012) and created by Larry Wall. This was a text processing language for Unix-like operating systems. Perl was to combine the efforts of three separate programs. Perl stands for Practical Extraction and Reporting Language. It filled the void between “manipulexity” (ability of languages like C to get into the innards of things) and “whipuptitude” (ability to write code quickly), according to Picking Up Perl (PDF) . It was a program that hadn’t existed and became extremely popular at the time.
The 1990s saw the boom of programming languages geared towards internet usage. Many existing languages were added upon or updated, and there was an increased use of scripting languages.
In 1991, Java was created as an object-oriented programming language by Sun Microsystems to run on any program with a Java virtual machine. Java was meant to run on any computer, according to An Introduction to Computers and Java (PPT). It was geared to use small files that can make it practical to distribute Java applications over the internet. The key points of Java are its simplicity, object-oriented program, and robust language.
RUBY was created in 1995 when Yukihiro Matsumoto saw a need for an easy to use, object-oriented scripting language. Ruby blends other programs, such as Perl, Lisp, and Eiffel, which creates a balance between functional and imperative programming. Ruby is constantly updated and improved, and in 2004 introduced the ability of third-party libraries and programs to be used in the Ruby.
HTML was released in 1990 by Tim Berners-Lee, who is also credited with creating the Worldwide Web. Hypertext was popular and being used on computers, as stated by w3. HTML was strongly based on SGML (Standard Generalized Mark-up Language), which was an internationally agreed upon method for marking up text into structural units.
Computer programming language has not stopped developing in the 2000s. Virginia Tech introduces C#. C# is a new, simple, object-oriented programming language based on Java and C++ programming language. It was created in 2000 by Microsoft and made to run on the .NET framework. Since it is tied closely to the Windows operating system, it works very well in OS-specific tasks such as user interfaces.
Microsoft also created the programming language Visual Basic and Visual Basic.NET, a next generation language of Visual Basic. This is mostly used for .NET applications and is quick and easy to use. It is a powerful, object-oriented programming language due to its improved features such as inheritance, interfaces, and overloading.
Explore Digital Library shows that even Google has its own programming language called GO. It was a side project done by Rob Pike, Robert Griesemer, and Ken Thompson. It was released as an open source project in 2009. GO was developed due to dissatisfaction with development languages used at Google. With the need for a programming language to handle the size of Google projects and code, GO was created.
The 2010s are seeing many more companies, like Facebook and Mozilla, creating their own special coding language. Most of the coding languages are open source, made for general purpose, and are made to be a more natural language.
Rust, created in 2012, is a general purpose programming language sponsored by Mozilla. It is an open source program that emphasizes safety and controlled memory layout. Along with other programming languages, it is similar in syntax to C and C++. It is currently one of the more popular programming languages to use.
SWIFT is also a general purpose coding language created by Apple in 2014. It was created to have a wide range of uses from systems programming to cloud services. Swift was designed to be safer, fast, and more efficient to use. It is also a C programming language based code.
One of the most current programming language was created in 2016 and is called RING. It is another general-purpose programming language that can be embedded in or extended with C/C++ code or be a stand-alone code. The code was created to be natural and easy for the programmer to use and, can be portable on multiple platforms.