Back to Blog

Programming Language Name Origins

Sat, 13 Jul 2013, by Syrsly

C++ was made originally to be a preprocessor for the C language. It was coined CPP, PP standing for preprocessor, and used that as one of the acceptable source file name extensions. Later, when CPP was beginning to look like its own language, it was re-coined C++, changing the P's to plus signs to signify it was no longer just a C preprocessor.
What is a preprocessor? In the case of CPP, it was an extension of the C language's features that allowed for more features, like header files and conditionally compiled code. It did this by processing the syntax of CPP into C code before compiling with a C compiler. Interestingly enough, the Haxe language works in a similar way.

Perl, often confused for CGI on webhosts, was almost always called Perl but was once called Pearl before being fully realized. It was shortened to Perl when the developer discovered there was already a language called Pearl. CGI stands for common gateway interface and is a helper library of sorts that allows you to run scripts written in a variety of languages, including Perl and Java, on a web server. While Perl was and still is the most popular language for CGI scripts, Perl was not the same thing as CGI. The scripts were called CGI scripts regardless of what language syntax was used. FastCGI was introduced as an improved, more modular CGI alternative.

Pascal was created to be DOS-only and did not support object-oriented programming methods. Free Pascal is not DOS-only and is actually more closely based on Delphi and Object Pascal, both of which are vastly superior to the original Pascal language. Pascal still has a small community around it, but it seems to be losing popularity.

HTML5, named after previous incarnations of HTML or Hyper-Text Mark-up Language, is not a language at all and is actually more of an unstable, experimental RAD platform for web games and apps. It is a term coined to describe a standard combination of technologies, including JavaScript, modern browser canvas features, and HTML mark-up codes. I also argue that HTML5 should include whatever server-side scripting language you use, be it C# or PHP or Perl or whatever, because that is very important to the experience.

Java was named after coffee. The word, java, actually means coffee. JavaScript was not created for Java specifically and was just a separate language created based on ECMAScript. Funny how some names are just so simple they get used more than once.