DEV Community

Cover image for 10 unusual programming languages that will drive you nuts 🤪
ispmanager.com for Ispmanager

Posted on

10 unusual programming languages that will drive you nuts 🤪

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.

Image description
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
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
‘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<br>
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
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
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
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
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
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
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.

Try ispmanager for your projects

Top comments (16)

Collapse
 
moozzyk profile image
Pawel Kadluczka • Edited

Two notable languages I found missing from this list:

  • Brainfuck where Hello World! looks like this:
+[-->-[>>+>-----<<]<--<---]>-.>>>+.>>..+++[.>]<<<<.+++.------.<<-.>>>>+.
Enter fullscreen mode Exit fullscreen mode
  • Rockstar programming language introduced by Dylan Beattie in his epic talk The Art of Code

Fun fact:
Microsoft used the Ook language to show how to add support for new languages to Visual Studio.

Collapse
 
jonrandy profile image
Jon Randy 🎖️

Also missed was JavaScript. Here's Hello World!:

[][(![]+[])[+[]]+(![]+[])[!+[]+!+[]]+(![]+[])[+!+[]]+(!![]+[])[+[]]][([][(![]+[])[+[]]+(![]+[])[!+[]+!+[]]+(![]+[])[+!+[]]+(!![]+[])[+[]]]+[])[!+[]+!+[]+!+[]]+(!![]+[][(![]+[])[+[]]+(![]+[])[!+[]+!+[]]+(![]+[])[+!+[]]+(!![]+[])[+[]]])[+!+[]+[+[]]]+([][[]]+[])[+!+[]]+(![]+[])[!+[]+!+[]+!+[]]+(!![]+[])[+[]]+(!![]+[])[+!+[]]+([][[]]+[])[+[]]+([][(![]+[])[+[]]+(![]+[])[!+[]+!+[]]+(![]+[])[+!+[]]+(!![]+[])[+[]]]+[])[!+[]+!+[]+!+[]]+(!![]+[])[+[]]+(!![]+[][(![]+[])[+[]]+(![]+[])[!+[]+!+[]]+(![]+[])[+!+[]]+(!![]+[])[+[]]])[+!+[]+[+[]]]+(!![]+[])[+!+[]]]([][(![]+[])[+[]]+(![]+[])[!+[]+!+[]]+(![]+[])[+!+[]]+(!![]+[])[+[]]][([][(![]+[])[+[]]+(![]+[])[!+[]+!+[]]+(![]+[])[+!+[]]+(!![]+[])[+[]]]+[])[!+[]+!+[]+!+[]]+(!![]+[][(![]+[])[+[]]+(![]+[])[!+[]+!+[]]+(![]+[])[+!+[]]+(!![]+[])[+[]]])[+!+[]+[+[]]]+([][[]]+[])[+!+[]]+(![]+[])[!+[]+!+[]+!+[]]+(!![]+[])[+[]]+(!![]+[])[+!+[]]+([][[]]+[])[+[]]+([][(![]+[])[+[]]+(![]+[])[!+[]+!+[]]+(![]+[])[+!+[]]+(!![]+[])[+[]]]+[])[!+[]+!+[]+!+[]]+(!![]+[])[+[]]+(!![]+[][(![]+[])[+[]]+(![]+[])[!+[]+!+[]]+(![]+[])[+!+[]]+(!![]+[])[+[]]])[+!+[]+[+[]]]+(!![]+[])[+!+[]]]((!![]+[])[+!+[]]+(!![]+[])[!+[]+!+[]+!+[]]+(!![]+[])[+[]]+([][[]]+[])[+[]]+(!![]+[])[+!+[]]+([][[]]+[])[+!+[]]+([]+[])[(![]+[])[+[]]+(!![]+[][(![]+[])[+[]]+(![]+[])[!+[]+!+[]]+(![]+[])[+!+[]]+(!![]+[])[+[]]])[+!+[]+[+[]]]+([][[]]+[])[+!+[]]+(!![]+[])[+[]]+([][(![]+[])[+[]]+(![]+[])[!+[]+!+[]]+(![]+[])[+!+[]]+(!![]+[])[+[]]]+[])[!+[]+!+[]+!+[]]+(!![]+[][(![]+[])[+[]]+(![]+[])[!+[]+!+[]]+(![]+[])[+!+[]]+(!![]+[])[+[]]])[+!+[]+[+[]]]+(![]+[])[!+[]+!+[]]+(!![]+[][(![]+[])[+[]]+(![]+[])[!+[]+!+[]]+(![]+[])[+!+[]]+(!![]+[])[+[]]])[+!+[]+[+[]]]+(!![]+[])[+!+[]]]()[+!+[]+[!+[]+!+[]]]+((![]+[])[+!+[]]+(![]+[])[!+[]+!+[]]+(!![]+[])[!+[]+!+[]+!+[]]+(!![]+[])[+!+[]]+(!![]+[])[+[]]+[+!+[]]+[!+[]+!+[]+!+[]+!+[]+!+[]+!+[]]+[!+[]+!+[]+!+[]+!+[]]+(!![]+[])[+[]]+[!+[]+!+[]+!+[]+!+[]+!+[]]+[+[]]+(!![]+[])[+[]]+[!+[]+!+[]+!+[]+!+[]]+[!+[]+!+[]+!+[]+!+[]+!+[]+!+[]+!+[]]+(!![]+[])[+[]]+[+!+[]]+[+!+[]]+[+[]]+(!![]+[])[!+[]+!+[]+!+[]]+(![]+[])[!+[]+!+[]]+(![]+[])[!+[]+!+[]]+(!![]+[])[+[]]+[+!+[]]+[!+[]+!+[]+!+[]+!+[]+!+[]]+[!+[]+!+[]+!+[]+!+[]+!+[]+!+[]+!+[]]+(!![]+[])[+[]]+[!+[]+!+[]+!+[]+!+[]]+[+[]]+(!![]+[])[+[]]+[+!+[]]+[!+[]+!+[]]+[!+[]+!+[]+!+[]+!+[]+!+[]+!+[]+!+[]]+(!![]+[])[+[]]+[+!+[]]+[!+[]+!+[]+!+[]+!+[]+!+[]]+[!+[]+!+[]+!+[]+!+[]+!+[]+!+[]+!+[]]+(!![]+[])[+!+[]]+(![]+[])[!+[]+!+[]]+([][[]]+[])[!+[]+!+[]]+(!![]+[])[+[]]+[!+[]+!+[]+!+[]+!+[]]+[+!+[]]+(!![]+[])[+[]]+[!+[]+!+[]+!+[]+!+[]]+[!+[]+!+[]+!+[]+!+[]+!+[]+!+[]+!+[]]+(!![]+[])[+[]]+[!+[]+!+[]+!+[]+!+[]+!+[]]+[+!+[]])[(![]+[])[!+[]+!+[]+!+[]]+(+(!+[]+!+[]+[+!+[]]+[+!+[]]))[(!![]+[])[+[]]+(!![]+[][(![]+[])[+[]]+(![]+[])[!+[]+!+[]]+(![]+[])[+!+[]]+(!![]+[])[+[]]])[+!+[]+[+[]]]+([]+[])[([][(![]+[])[+[]]+(![]+[])[!+[]+!+[]]+(![]+[])[+!+[]]+(!![]+[])[+[]]]+[])[!+[]+!+[]+!+[]]+(!![]+[][(![]+[])[+[]]+(![]+[])[!+[]+!+[]]+(![]+[])[+!+[]]+(!![]+[])[+[]]])[+!+[]+[+[]]]+([][[]]+[])[+!+[]]+(![]+[])[!+[]+!+[]+!+[]]+(!![]+[])[+[]]+(!![]+[])[+!+[]]+([][[]]+[])[+[]]+([][(![]+[])[+[]]+(![]+[])[!+[]+!+[]]+(![]+[])[+!+[]]+(!![]+[])[+[]]]+[])[!+[]+!+[]+!+[]]+(!![]+[])[+[]]+(!![]+[][(![]+[])[+[]]+(![]+[])[!+[]+!+[]]+(![]+[])[+!+[]]+(!![]+[])[+[]]])[+!+[]+[+[]]]+(!![]+[])[+!+[]]][([][[]]+[])[+!+[]]+(![]+[])[+!+[]]+((+[])[([][(![]+[])[+[]]+(![]+[])[!+[]+!+[]]+(![]+[])[+!+[]]+(!![]+[])[+[]]]+[])[!+[]+!+[]+!+[]]+(!![]+[][(![]+[])[+[]]+(![]+[])[!+[]+!+[]]+(![]+[])[+!+[]]+(!![]+[])[+[]]])[+!+[]+[+[]]]+([][[]]+[])[+!+[]]+(![]+[])[!+[]+!+[]+!+[]]+(!![]+[])[+[]]+(!![]+[])[+!+[]]+([][[]]+[])[+[]]+([][(![]+[])[+[]]+(![]+[])[!+[]+!+[]]+(![]+[])[+!+[]]+(!![]+[])[+[]]]+[])[!+[]+!+[]+!+[]]+(!![]+[])[+[]]+(!![]+[][(![]+[])[+[]]+(![]+[])[!+[]+!+[]]+(![]+[])[+!+[]]+(!![]+[])[+[]]])[+!+[]+[+[]]]+(!![]+[])[+!+[]]]+[])[+!+[]+[+!+[]]]+(!![]+[])[!+[]+!+[]+!+[]]]](!+[]+!+[]+!+[]+[+!+[]])[+!+[]]+(![]+[])[!+[]+!+[]]+([![]]+[][[]])[+!+[]+[+[]]]+(!![]+[])[+[]]]((!![]+[])[+[]])[([][(!![]+[])[!+[]+!+[]+!+[]]+([][[]]+[])[+!+[]]+(!![]+[])[+[]]+(!![]+[])[+!+[]]+([![]]+[][[]])[+!+[]+[+[]]]+(!![]+[])[!+[]+!+[]+!+[]]+(![]+[])[!+[]+!+[]+!+[]]]()+[])[!+[]+!+[]+!+[]]+(!![]+[][(![]+[])[+[]]+(![]+[])[!+[]+!+[]]+(![]+[])[+!+[]]+(!![]+[])[+[]]])[+!+[]+[+[]]]+([![]]+[][[]])[+!+[]+[+[]]]+([][[]]+[])[+!+[]]](([][(![]+[])[+[]]+(![]+[])[!+[]+!+[]]+(![]+[])[+!+[]]+(!![]+[])[+[]]][([][(![]+[])[+[]]+(![]+[])[!+[]+!+[]]+(![]+[])[+!+[]]+(!![]+[])[+[]]]+[])[!+[]+!+[]+!+[]]+(!![]+[][(![]+[])[+[]]+(![]+[])[!+[]+!+[]]+(![]+[])[+!+[]]+(!![]+[])[+[]]])[+!+[]+[+[]]]+([][[]]+[])[+!+[]]+(![]+[])[!+[]+!+[]+!+[]]+(!![]+[])[+[]]+(!![]+[])[+!+[]]+([][[]]+[])[+[]]+([][(![]+[])[+[]]+(![]+[])[!+[]+!+[]]+(![]+[])[+!+[]]+(!![]+[])[+[]]]+[])[!+[]+!+[]+!+[]]+(!![]+[])[+[]]+(!![]+[][(![]+[])[+[]]+(![]+[])[!+[]+!+[]]+(![]+[])[+!+[]]+(!![]+[])[+[]]])[+!+[]+[+[]]]+(!![]+[])[+!+[]]]((!![]+[])[+!+[]]+(!![]+[])[!+[]+!+[]+!+[]]+(!![]+[])[+[]]+([][[]]+[])[+[]]+(!![]+[])[+!+[]]+([][[]]+[])[+!+[]]+(![]+[+[]])[([![]]+[][[]])[+!+[]+[+[]]]+(!![]+[])[+[]]+(![]+[])[+!+[]]+(![]+[])[!+[]+!+[]]+([![]]+[][[]])[+!+[]+[+[]]]+([][(![]+[])[+[]]+(![]+[])[!+[]+!+[]]+(![]+[])[+!+[]]+(!![]+[])[+[]]]+[])[!+[]+!+[]+!+[]]+(![]+[])[!+[]+!+[]+!+[]]]()[+!+[]+[+[]]]+![]+(![]+[+[]])[([![]]+[][[]])[+!+[]+[+[]]]+(!![]+[])[+[]]+(![]+[])[+!+[]]+(![]+[])[!+[]+!+[]]+([![]]+[][[]])[+!+[]+[+[]]]+([][(![]+[])[+[]]+(![]+[])[!+[]+!+[]]+(![]+[])[+!+[]]+(!![]+[])[+[]]]+[])[!+[]+!+[]+!+[]]+(![]+[])[!+[]+!+[]+!+[]]]()[+!+[]+[+[]]])()[([][(![]+[])[+[]]+(![]+[])[!+[]+!+[]]+(![]+[])[+!+[]]+(!![]+[])[+[]]]+[])[!+[]+!+[]+!+[]]+(!![]+[][(![]+[])[+[]]+(![]+[])[!+[]+!+[]]+(![]+[])[+!+[]]+(!![]+[])[+[]]])[+!+[]+[+[]]]+([][[]]+[])[+!+[]]+(![]+[])[!+[]+!+[]+!+[]]+(!![]+[])[+[]]+(!![]+[])[+!+[]]+([][[]]+[])[+[]]+([][(![]+[])[+[]]+(![]+[])[!+[]+!+[]]+(![]+[])[+!+[]]+(!![]+[])[+[]]]+[])[!+[]+!+[]+!+[]]+(!![]+[])[+[]]+(!![]+[][(![]+[])[+[]]+(![]+[])[!+[]+!+[]]+(![]+[])[+!+[]]+(!![]+[])[+[]]])[+!+[]+[+[]]]+(!![]+[])[+!+[]]]((![]+[+[]])[([![]]+[][[]])[+!+[]+[+[]]]+(!![]+[])[+[]]+(![]+[])[+!+[]]+(![]+[])[!+[]+!+[]]+([![]]+[][[]])[+!+[]+[+[]]]+([][(![]+[])[+[]]+(![]+[])[!+[]+!+[]]+(![]+[])[+!+[]]+(!![]+[])[+[]]]+[])[!+[]+!+[]+!+[]]+(![]+[])[!+[]+!+[]+!+[]]]()[+!+[]+[+[]]])+[])[+!+[]])+([]+[])[(![]+[])[+[]]+(!![]+[][(![]+[])[+[]]+(![]+[])[!+[]+!+[]]+(![]+[])[+!+[]]+(!![]+[])[+[]]])[+!+[]+[+[]]]+([][[]]+[])[+!+[]]+(!![]+[])[+[]]+([][(![]+[])[+[]]+(![]+[])[!+[]+!+[]]+(![]+[])[+!+[]]+(!![]+[])[+[]]]+[])[!+[]+!+[]+!+[]]+(!![]+[][(![]+[])[+[]]+(![]+[])[!+[]+!+[]]+(![]+[])[+!+[]]+(!![]+[])[+[]]])[+!+[]+[+[]]]+(![]+[])[!+[]+!+[]]+(!![]+[][(![]+[])[+[]]+(![]+[])[!+[]+!+[]]+(![]+[])[+!+[]]+(!![]+[])[+[]]])[+!+[]+[+[]]]+(!![]+[])[+!+[]]]()[+!+[]+[!+[]+!+[]]])())()
Enter fullscreen mode Exit fullscreen mode
Collapse
 
eljayadobe profile image
Eljay-Adobe

Oh myyy! That offends my delicate sensibilities.

Could you please censor it to b****fuck. Thanks!

Collapse
 
efpage profile image
Eckehard • Edited

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:

: HELLO  ( -- )  CR ." Hello, World!" ;

HELLO <cr>
Hello, World!
Enter fullscreen mode Exit fullscreen mode
Collapse
 
greenteaisgreat profile image
Nathan G Bornstein

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!

Collapse
 
ispmanager_com profile image
ispmanager.com

Thank you for your feedback! We fixed the link to Velato

Collapse
 
leob profile image
leob

Love this - the one I knew and was previously somewhat "proficient" in :-P is LOLCode!

Collapse
 
ranjancse profile image
Ranjan Dailata

Interesting!

Among everything, I loved the Chef and Piet :)

Collapse
 
jangelodev profile image
João Angelo

Thanks for sharing !

Collapse
 
anmolbaranwal profile image
Anmol Baranwal

I was hooked the moment I saw the banner.
Writing this comment without reading the post. Gonna do it. LOL!

Collapse
 
rickrickiin profile image
Rickrickiin

programming languages ​​can be really difficult.

Collapse
 
tandrieu profile image
Thibaut Andrieu

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...

Image description

Collapse
 
knopkem profile image
Michael Knopke

Love it

Collapse
 
andylarkin677 profile image
Andy Larkin

new knowledge never hurts. even if you never use them. but it was very interesting

Collapse
 
vadimnevlad profile image
Vadym Marukhnenko

Interesting, Thanks for sharing!

Collapse
 
citronbrick profile image
CitronBrick

While it's not exotic as the others on this list,
I (& quite some acquaintances) find Objective C's syntax to be bizarre & counter intuitive.

Some comments may only be visible to logged-in visitors. Sign in to view all comments.