Malbolge – the most difficult language in the world
Get it here
Features: interpreter, command interpreter
A language with no standard syntax, in which all commands are executed arbitrarily and the code is even encrypted. Malbolge works on a ternary number system, understands only 3 registers, and fills up the free memory of the interpreter with empty data. All that amounts to one hellish language, which is simply impossible to work with. Only 3 programs have been written in Malbolge – all with the help of a computer.
Even the creator of the language could not write ‘Hello, World’ in Malbolge. It took 2 years of code selection in Lisp to produce it
WhiteSpace – the preferred language of 3-letter-agency glowies
Get it here
Features: interpreter, assembler
For those who like to skip tabs in code, WhiteSpace is just what the doctor ordered to wean you off that habit. WhiteSpace is a language consisting only of spaces, tabs, and line feeds, where the sequence of characters determines the type of commands. The language only uses non-printing characters; all text is ignored and can only be used in comments.
The ‘Hello, World’ command. The code is invisible until it is selected with a mouse, so it can be inserted into other code
Ook! – a language for orangutans
Get it here
Features: compiler, interpreter
If memorizing the syntax of popular languages is too difficult, you can try Ook!, which consists of only 3 syntax elements. However, coding in Ook! is more difficult – commands are created from even-numbered blocks of various combinations of Ook, Ook! and Ook? This really stretches the code, but it is quite possible to write a working program. The creator of Ook! says it doesn’t need to be commented; it’s simple enough for orangutans to use.
‘Hello, World’ written in Ook! Eventually, this syntax will make your eyes burn
Chef – for true gourmets
Get it here
Features: interpreter, manual
In Chef, programs look like cooking recipes. The program code consists of separate blocks with a list of variables and their values, as well as processing instructions. Variables are all referred to by the names of real products. The language is quite functional and suitable for writing complex programs. It’s an enticing option if you have a sweet tooth.
If you like to both code and cook, Chef will be easy to figure out
Piet – the most beautiful programming language
Get it here
Features: compilers, interpreters, IDEs
Here’s an artistic language for fans of the abstract, in which code is written using blocks of color. Each block can consist of 20 shades of varying brightness, and each color is processed in its own way. The compiler notes the difference between neighboring colors within each block, then loops through the color shades and processes each color. The blocks are separated from each other by a border of black or white and may have different numbers of pixels. It is entirely possible to code on Piet, but it is better not to rely on an exact result as each interpreter reads the code in its own way.
An enlarged image of ‘Hello, World’ in Piet
LolCode – a meme language
Get it here
Features: compiler, interpreter, documentation
Not to be confused with Low Code, the syntax of LolCode is based on Internet slang, so it’s quite easy to learn. At first glance, the language seems much like a riff on Cobol, mainly for entertainment. However, if you have too much of free time, you can develop your own LolCode meme compiler or interpreter.
You can code in LolCode without learning the syntax, but it’s not meant for serious development
ArnoldC – for Terminator fans
Get it here
Features: compiler, interpreter, manual
Basically a collection of Arnold Schwarzenegger quotes with which to code. ArnoldC is based on C and can work with loops, logical operators and functions. It’snot practical at all, but a decent stack of programs has been written in it. We’re just waiting for the release of an OS written in ArnoldC.
Hello, World on ArnoldC. To code in the language, you need an encyclopedic knowledge of quotes from Schwarzenegger movies
Java2k – a probability language
Get it here
Features: interpreter, compiler, manual
A language for which nothing is fundamentally important. Java2k works according to probability – a built-in function may even fail to do what it should or produce a totally unpredictable result. A program written in Java2k will operate differently each time it is run. This makes the language resemble quantum computers, where the correct answer is reached probabilistically.
The code for ‘Hello, World’ in Java2k looks unremarkable but the program will not always work as expected
Velato – a jazzy language
Get it here
Features: compiler, MIDI library, language rules
Yes, you can write code in musical notation. Velato reads MIDI files as source code, so you can write a program and a melody at the same time. The algorithm takes the note order and intervals into account, and the note pitch is treated as an alphabet. Velato works with expressions, numbers, variables, and statements, but does not yet support functions or arrays. The syntax does not process bars, refrains, or note durations. Velato cannot process real songs – you can’t translate John Coltrane songs into working programs.
Example of ‘Hello, World’ on Velato, with a touch of jazz harmonica
Intercal – the most polite language
Get it here
Features: compiler, manual
Intercal is a rather ancient language, dating back to the era of Cobol and Fortran. Intercal is full of paradoxical constructions and often works according to non-trivial logic, making it difficult for an outsider to understand someone else's code. When compiling code, good manners are taken into account, for example, the number of polite modifiers like please.
If the magic word, Please, is used too sparsely in the code, the compiler will generate an error calling the code insufficiently polite, if too often – over formal
Need stability?
The programming languages above are for fun and games. No one uses them to write serious programs. For example, to develop our control panel, we used C++, Go, JS, and Python to achieve maximum stability, fault tolerance, and functionality.
Top comments (16)
Two notable languages I found missing from this list:
Hello World!
looks like this:Fun fact:
Microsoft used the Ook language to show how to add support for new languages to Visual Studio.
Also missed was JavaScript. Here's
Hello World!
:Oh myyy! That offends my delicate sensibilities.
Could you please censor it to
b****fuck
. Thanks!You should add Forth (see also here ).
Forth uses a very small core (often < 8kB), that is extended by the user code, so the installation often contains only the bare minimum necessary to compile some code. A full-featured Forth system with all source code will compile itself, a technique commonly called meta-compilation or self-hosting.
Forth was and is used to write real applications, but it is also famous for the fact, that the code is quite unreadable. It could happen that a programmer was not able to tell, what the code was meant to do, two week after he/she had written it.
This is, how Hello World looks like in FORTH:
Velato is SO COOL!! I can't believe I haven't heard of that before. Also, I think the
Get it here
link for Velato is broken. It doesn't seem to go anywhere. Super awesome article!Thank you for your feedback! We fixed the link to Velato
Love this - the one I knew and was previously somewhat "proficient" in :-P is LOLCode!
Interesting!
Among everything, I loved the Chef and Piet :)
Thanks for sharing !
I was hooked the moment I saw the banner.
Writing this comment without reading the post. Gonna do it. LOL!
programming languages can be really difficult.
I love PIET !
Especially the program to compute PI with arbitrary precision, which basically consist in drawing a circle and counting its pixels 🤣
dangermouse.net/esoteric/piet/samp...
Love it
Some comments may only be visible to logged-in visitors. Sign in to view all comments.