Updated 2014-04-16 23:12:01 by juef

PT Malbolge[1] is a programming language that is designed to be impossible to program in. The name comes from Dante's eighth circle of hell where the practitioners of deception are cast. The runtime interpreter uses trinary and places code and data in the same memory space. When the program is run, each program value is read and decoded using the previous program value. The language is believed to be Turing complete.

There are currently only three Malbolge programs written. The first is trivial as well as useless, the second is the usual "hello world", and the third copies input to output. Hello World was developed using a genetic algorithm and isn't perfect.

Nop
 DP

Hello World
 (=<`$9]7<5YXz7wT.3,+O/o'K%$H"'[email protected]=`{^Lx8%$Xmrkpohm-kNi;gsedcba`_^]\[ZYXWVUTS
 RQPONMLKJIHGFEDCBA@?>=<;:9876543s+O<oLm

cat (copy input to output, non-printing chars as \ooo, from [2])
 D'BA@?>=<;:9876543210/.-,+*)('&%$#"!~}|{zyxwvutsrqponmlkjihgfedcba`_^]
 \134[ZYXWVUTSRQPONMLKJIHGFEDCBA@?>=<;:9876543210/.-,+*)('&%$#"!~}|{zyx
 wvutsrqponmlkjihgfedcba`_^]\134[ZYXWVUTSRQPONMLKJIHGFEDC&_\275\275\275
 \275\275\275\275\275\275\275\275\275\275\275\275\275\275\275\275\275\275
 \275\275\275\275\275\275\275\275\275\275\275\275\275\275\275\344\275\275
 \275\275\275\275\275\275\275\275\275\275\275\275\275\275\275\275\275\275
 \275\275\275\275\275\275\275\275\275\275\275\275\275\275\275\275\275\275
 \275\275\275\275\275\275\275\275\275\275\275\275\275\275\275\275\275\275
 \275\275\275\275\275\275\275\275\275\275\275\275\275\275\275\275\275\275
 \275\275\275\275\275\275\275\275\275\275\275\275\275\275\275\275\275\275
 \275\275\275\275\275\275\275\275\275\275\275\275\275\275\275\275\275\275
 \275\275\275\275\275\275\275\275\275\275\275\275\275\275\275\275\275\275
 \275\275\275\275\275\275\275\344\275\275\275\275\275\275\275\275\275\275
 \275\275\275\275\275\275\275\275\275\275\275\275\275\275\275\275\275\275
 \275\275\275\275\275\275\275\275\275\275\275\275\275\275\275\275\275\275
 \275\275\275\275\275\275\275\275\275\275\275\275\275\275\275\275\275\275
 \275\275\275\275\275\275\275\275\275\275\275

MSW says, "Cool, trinary!" :) We should write a tcl compiler for it, just to bug the Malbolge developers...

DKF: Is there a Tk binding for it?

AMG: Wow DKF. I came to this page precisely to ask the same question, but you beat me to it by ten years.