The intention of programming languages is usually to solve real life problems using a predefined structure. They should have a clear syntax whose implementation is bug-free, fast, and understandable. But how many programming languages strictly adhere to these principles?
A good number of the programming languages have logical names (acronyms) that tell you what you can achieve with it. For example, CSS means Cascading Style Sheet, HTML means HyperText Markup Language, and so on. At other times, the name can be a derivative of an existing name (like C++, CoffeeScript), or it represents a figure or character that inspired the design (Pascal).
Assigning names to different processes is one of the toughest tasks for programmers while developing software. A number of people have compared learning programming to learning a new language. To deal with the confusion and make programming interesting and fun, the limit to programming language has been stretched.
This has given birth to esoteric programming languages (Esolang). These programming languages are mostly created for fun, rather than to solve any serious computing problem. It will surprise you to know that all the weird names given to programming languages have an origin, many of which are very interesting. Below are the stories behind some of the names.
Python
A novice to computer language might imagine this programming language wards off snakes! The logo has an image of an intertwined python, after all - but no, there is no relation between the two. The first release of this popular language was in 1991, though it was created in the late '80s. Python was the brainchild of Guido van Rossum, a Dutch programmer, during a Christmas break. The new script language was a derivative of ABC programming language. Rossum was a big fan of Monty Python, a British comedy group and got his inspiration from them. Rossum’s love for Monty Python is embedded in the language, “spam and eggs” replacing “foo and bar” which are standard tutorial and reference examples.
Ruby
Ruby was designed by Yukihiro Matsumoto, who at that time was focused on writing a language higher than Python in object-oriented capabilities, and would supersede Perl in scripting power. When it was time to name the new program, Matsumoto engaged a colleague, Keiju Ishitsuka in an online chat. A few names were suggested of which Coral and Ruby were the frontrunners. Ruby won out, but the real reason behind the decision is much under speculation.
Java
In the early 1990s, it was obvious that there was a sweeping wave of smart appliances and there was a need to create a technology to support them. This gave birth to Java, a product of Sun’s Green project. Oak was the initial name chosen for the new programing language. However, on the discovery that the name had already been trademarked, a new one was imminent. A series of meetings produced a shortlist of names including DNA, Silk, and Java. It is not clear how Java was picked but there is a strong notion that it was inspired by Peet’s Coffee & Tea , a spot frequented by Sun’s engineers.
Forth
Charles Moore developed the Forth language in the 1960s. Moore, who at the time was working for a home-furnishings company, was charged with the task of carpeting design, using a 2250 graphic display on an IBM 1130 mini computer. FORTRAN proved insufficient for the task, so Moore had to come up with a language that could do the job. The initial name he chose was Fourth - representing the fourth generation language. However, the IBM 1130 allowed only 5 characters for filenames, and as a result the U was dropped, giving birth to Forth.
Pascal
This programming language was one of the early creations. Its name is an appreciation of the famous mathematician and inventor, Blaise Pascal. Pascal knew a bit of everything, but particularly earned the admiration of the world for his contributions to projective geometry, probability, and mathematics. What is even more remarkable about him was that the majority of his theories were developed during his adolescent years. He went ahead to build the first mechanical calculator which set the ball rolling for a digital computation age.
Perl
The power and flexibility of Perl languages earned it the name, “Swiss Army Chainsaw.” Perl came into existence in the 1980s, orchestrated by Larry Wall. All Wall wanted when it was time to name his programming language was a name that was short, and which had positive connotations. Among his considerations was Gloria, the name of his wife before he settled for "pearl". Since a programming language already had that name, - Process and Experiment Automation Real-time Language, he adjusted his own to "perl". The name was initially all in the lower case, until 1993 when Perl 4 was introduced and the name adjusted.
Lua
TeCGraf was the creator of Lua which is a scripting language. Lua drew inspiration from two earlier languages, SOL (Simple Object Language) and DEL (Data Entry Language), both by TeCGraf. Naming the new programming language wasn’t too much of a task since one of its parent languages was SOL (which is a Portuguese name for sun). Lua was chosen which is a Portuguese name for the moon. Lua combined the functionalities of its parents, SOL and DEL, with the addition of new functionalities like flow control.
Smalltalk
First developed in the early 1970s by Xerox’s Palo Alto Research Center (PARC), and a product of Alan Kays' Learning Research Group, Smalltalk is an object-oriented programming language. Later programming languages like Ruby, Python, and Java were influenced by Smalltalk. According to Kay, the name was a comeback from the era of “Indo-European god theory” that gave god-like names to systems.
Whitespace
Whitespace was a collaboration between Chris Morris and Edwin Brady in 2002. This esoteric programming language has a syntax made up of whitespace characters only. In this program, only tabs, spaces and linefeeds have meaning. People initially thought it was an April Fool’s joke when it was released in 2003. Whitespace is a polyglot, which means it can be embedded within the white spaces of another programming language.
Logo
In the mid-1960s, Bolt, Beranek and Newman formed an alliance with MIT’s Artificial Intelligence Lab computer scientists and initiated a programming language for educational purposes which they named Logo. Logo was designed to teach other programming languages, and had a strong influence on later programming languages in its category, for example, Scratch. The differentiating feature of Logo was that turtle graphics were used to generate output from commands. Logo is a derivative of “logos” which means thought in Greek.
Scheme
One of the earliest high-level programming languages was Lisp, developed by MIT's John McCarthy in the later part of 1950. Artificial intelligence researchers soon found favour with this programming language. Different variations of Lisp followed in the years to come, including Planner and Conniver. In 1975, Guy Steele and Geral Jay Sussman,- also at MIT - came up with a new variation of Lisp. In accordance with the Planner and Conniver naming convention, they called it Schemer, but due to filename limitations, it was reduced to Scheme.
Scala
Martin Odersky created Scala in 2001. This programming language was both objective-oriented and functional. There are two different reasons why the name Scala was chosen. The first is that it scales well, combining Scalable LAN. The second was that “scala” in Italy means “ladder” or “stairs”. The bottom line was that scala provided a decent climb to a better programming language.
Scratch
In 2003, a group working at MIT Media Lab came up with an educational programming language called Scratch. It was designed for kids to connect blocks on the screen. With Scratch, they could create just about anything they dreamed up. from games to stories to music. The name was inspired by disc jockeys used by hip-hop stars to create new music and sounds.
AWK
AWK, an interpreted language, is familiar with the Unix user and is used for processing text files. AWK was developed in 1977 and was included in Unix Version 7 in 1979. Most programming language names that are acronyms will give you a hint of its function. Here, AWK differs because it is derived from the names of the three men that conceived it: Alfred Aho, Peter Weinberger, and Brian Kernighan.
There is no restriction to what you can name a programming language, and there are many others beyond this list. Feeling bored or need something engaging? Why not head to Freelancer and bid for one of the numerous available programming jobs! Hopefully you will feel inspired while using a program, and be reminded of how it got its name.
If you are familiar with a programming language, what is the weirdest name you have heard and what is the story behind it? Tell us in the comments section below!