Here’s a look at the top 6 whackiest and crazy programming languages
Do you think that programmers do not have fun? Yes…Then, well how would you explain TrumpScript, LOLCODE, Chef, Shakespeare, Whenever and Malbolge?
Esoteric programming language (sometimes shortened to esolang) is a programming language designed to test the boundaries of computer programming language design, as a proof of concept, as software art, as a hacking interface to another language (particularly functional programming or procedural programming languages), or as a joke. The use of esoteric distinguishes these languages from programming languages that working developers use to write software.
So, what happens when you add Donald Trump, cats, recipes and Shakespeare’s poems to programming languages? You end up getting error messages such as “I’m really rich, part of the beauty of me is I’m very rich”, or LOLCats rule your code, or source code has rhymes and a hint of tragedy and the language basically does what it wants, when it wants or it looks like a cooking recipe.
TrumpScript: “We hope our efforts will make programming great again”
TrumpScript may be declared as official programming language of USA after Donald Trump wins the election (just joking). It is a language based on the life and quotes of the illustrious U.S. presidential candidate Donald Trump.
As the undeniably best presidential candidate in the 2016 language, four Rice University students decided that “the current field of programming languages does not include any that Trump’s glorious golden combover would approve of” and created something worthy of a presidential candidate during a 36-hour hackathon. Here are some of TrumpScript’s features:
- All numbers must be strictly greater than 1 million. The small stuff is inconsequential to us.
- There are no import statements allowed. All code has to be home-grown and American made.
- Instead of “True” and “False”, we have “Fact” and “Lie”.
- Error messages are mostly quotes directly taken from Trump himself.
- All programs must end with “America is Great”.
- Our language will automatically correct Forbes’ $4.5B to $10B.
- In its raw form, TrumpScript is not compatible with Windows, because Trump isn’t the type of guy to believe in PC.
LOLCODE: Lolspeak is real
Inspired by lolspeak, LOLCODE is a language expressed in examples of the lolcatInternet meme. The language was created in 2007 by Adam Lindsay, researcher at the Computing Department ofLancaster University.
This esoteric programming language shoots from the LOLCats phenomenon and uses LOLCats syntax to function properly. LOLCODE’s keywords are drawn from the heavily compressed (shortened) patois of the lolcat Internet meme. The moment you look at the ‘Hello World!’ code, you will surely ignore all its weaknesses.
Shakespeare: The ‘to be or not to be’ programming language
Designed by Jon Aslund and Karl Hasselstrom, this programming language was created with the intention to make the source code appear to be something other than programs; in this case, Shakespearean plays.
In the beginning of the program, a character list declares a number of stacks with names like “Romeo” and “Juliet”. These characters enter into dialogue with each other in which they manipulate each other’s topmost values, push and pop each other, and do I/O. The characters can also ask each other questions which behave as conditional statements.
On the whole, the programming model is very similar to assembly language but much wordier. Also, variables must be named after Shakespeare’s characters and constants are decided by positive or negative nouns.
Here is a small part of the source code:
“To be or not to be?”
Whenever: Can you handle it?
This programming language does what it wants, when it wants. According to the project description, it has “no sense of urgency. It does things whenever it feels like it, not in any sequence specified by the programmer.” Not only data structures are hyped, but also variables. Program code lines are always executed (eventually), but the order doesn’t have to bear any similarity to the order in which they are indicated. It does contain some dedicated statements to deal with the random nature of the execution environment even though it has no flow control functionality and no variables.
Chef: Hello World Soufflé
This is your chance to mix pleasure with business if you are a secret masterchef. While the Chef looks like a cooking recipe, the ingredients have individual data values. The ingredients can be understood as Unicode for I/O purposes, though they are numerical. While dry or unspecified ingredients will be output as numbers, the liquid ingredients will be output as Unicode characters.
In short, the output must be delicious and simple to prepare, recipes are for people with different budgets and they must be metric. Here is the source code for ‘Hello World!’:
Malbolge: Programming from hell
Ben Olmstead created this programming language in 1998 and named after Dante’s Ninth Circle of Hell. Malbolge was specifically designed to be almost impossible to use, via a counter-intuitive ‘crazy operation’, base-three arithmetic and self-altering code. It builds on the difficulty of earlier, challenging esolangs (such as Brainfuck and Befunge), but takes this feature to the extreme, playing on the entangled histories of computer science and encryption.
Warning: Don’t feel bad if you find Malbolge terrifying, as it was created using an algorithm. Don’t believe it? Here is the source code for ‘Hello World!’: