Friday, February 11, 2005

Hello, cruel world

The following program displays "Hello, world" in the Malbolge programming language.
(=<`:9876Z4321UT.-Q+*)M'&%$H"!~}|Bzy?=|{z]KwZY44Eq0/{mlk**
hKs_dG5[m_BA{?-Y;;Vb'rR5431M}/.zHGwEDCBA@98\6543W10/.R,+O<
Malbolge is an esoteric programming language, designed to be impossible to use. It took two years for the first Malbolge program to appear, and it was written by a computer, rather than a person.
Malbolge is a public domain programming language invented by Ben Olmstead in 1998, named after the eighth circle of hell in Dante's Inferno.

The peculiarity of Malbolge is that it was designed to be the worst possible (most difficult and esoteric) programming language. However, several of the tricks used to make understanding difficult can be simplified away...

Olmstead believed Malbolge to be Turing complete, except for infinite memory. There is a more interesting discussion about whether one can implement sensible loops in Malbolge — it was many years before introducing the first non-terminating one.
Other esoteric languages of interest include Whitespace, which accepts only spaces, tabs, and newlines as syntax; Shakespeare, in which programs appear as Shakespearean plays; and Whenever, a language in which commands are executed whenever the interpreter gets around to it.

Tomorrow: SI. No, not that SI; the other kind.