Two9A 14 years ago

Esoteric languages are good fun, to be sure, but it's possible to take the concept a little far.

Brainfuck, for example, is a great example of a minimalist Turing-complete language, expressed as an esoteric. Befunge and Piet are other good examples of languages that approach programming from a different angle. Malbolge, though, is just malevolent and evil for its own sake.

I guess that's the point.

  • AndrewDucker 14 years ago

    Malbolge would be a challenge to the programming community.

    "Here is a language. I bet you can't make it do anything."

    Some people clearly like being challenged (see, for instance, the writer of the 99 bottles of beer algorithm)

    • adavies42 14 years ago

      yes, that was the design goal. intercal is supposed to be unlike any other language, brainfuck is supposed to be minimalistic, malbolge is supposed to be impossible to use.

    • Deestan 14 years ago

      That's a nice response to the frustrating "good programmers can create working software in any language/technology - stop complaining about WPF/VB6/Delphi7/CVS" statement.

    • xn13 14 years ago

      I really meant it as a joke/proof-of-concept, rather than a challenge per se. That some people came along later and found it to be an entertaining challenge was a happy accident.

  • mikeash 14 years ago

    Given the name (8th circle of Hell), I'm sure that's the point.

gghh 14 years ago

Here a program that makes a for loop. From the comments: This program is something I thought to be impossible

http://99-bottles-of-beer.net/language-malbolge-995.html

  • Akram 14 years ago

    Awesome... It might GB of code to write some thing useful.

  • Patient0 14 years ago

    "There is a claim that the '99 bottles of beer' program has been written in Malbolge. ( See http://99-bottles-of-beer.ls-la.net/m.html) The implication is that the program was doing looping, testing and printing. However, closer examination shows that the programmer was just doing a printf("") of the desired result using straight line code. Conceptually this is exactly the same as the 'hello world' example above."

    http://www.lscheffer.com/malbolge.shtml

    • gghh 14 years ago

      Hello Patient0, I didn't follow closely the issue, but reading the comment http://www.99-bottles-of-beer.net/language-malbolge-995.html... I formed the following opinion (speculation, since no much "subtitles" are provided): somebody wrote the 99-bottle program in Malbolge, actually doing printf("..."), which isn't that interesting after all. Then Hisashi Iizawa showed up and did the real thing (looping). Pedro Gimeno (the commenter I linked) did some analysis, and is convinced that the program does looping:

      The program length is 22561 instructions; its output is 11459 bytes long. The ratio is less than 2 instructions per output byte, clearly insufficient <i>with Malbolge's limitations</i> for a program which simply outputs constant text.

      This person also rewrote the program in what he calls "the normalized form", whatever that means (see comment for link to that code).

      • Patient0 14 years ago

        Ah I see. And he does say "(real loop version)" as a subtitle.

LukaD 14 years ago

Obviously a Perl inspired Syntax.

afhof 14 years ago

I like esoteric languages as much as the next geek, but not being Turing-Complete puts a real limit on the coolness of a language. I think it's much more salient to say you can do anything in a ridiculous language rather than limiting it.

  • sp332 14 years ago

    The only reason it's technically not Turing-complete is because of its limited memory. The Malbolge Unshackled variant has unlimited memory and is Turing-complete.

syncsynchalt 14 years ago

Ben, if you're out there, hope you're doing well. - Mike and Simone, from Mines

  • xn13 14 years ago

    And lo, by the name Malbolge I am summoned.

    ben at xn13 dot com if you want to get hold of me.