Welcome to the Obfuscated Languages site!

DISCLAIMER: The maintainer of this site and the providers of this site are in no way responsible for any brain damage, loss of sanity, or hysteria caused by viewing this page. Those who prefer not to see this may head right back to Prfnoff's Home Page and hope not to/to be directed to this page again.


Fromage

Fromage was created as an experiment, and is based on the Turing machine model and a twisted set of control structures I had made earlier. It also resembles BrainF*** to some extent, though at the time I conceived the language I knew it very sketchily. Fromage's obnoxiousness and lack of ease of use, so typical in obfuscated languages, lie in its 10 instructions which operate on no data type larger than a bit. (Well, there's the read and write functions which operate on characters, but they can only be operated by switching bits.)

And now for a list of Fromage resources and links. It's currently small, although it will probably grow in the future.

BAK

BAK has been my second attempt at creating an almost unusable language. Inspired by such wonderful languages as Befunge, Malbolge, False, and Unlambda, programs written in this language work because they create pointers to themselves. Programs can also be self-modifiying, which makes writing a compiler for it somewhat difficult. On top of all of this, several strange restrictions are enforced on BAK programs. In short, it's an obfuscated language that tests the limit of language sanity, and an addictive one, too!

The BAK interpreter is once again written in obfuscated C. The "Hello, world" and 'cat' programs are given as examples of code that work, and not as examples of how one should program in BAK. There is also a BAK reference manual, but don't count on it to be informative. Finally, there is an archive of all of the other BAK stuff.

Other projects

After thinking too hard over BAK, I decided to create a language that completely streamlined the self-modification so present in BAK. The result was named 'L', and currently the only material is the 'L' specification, but anyone is welcome to contact me if they want to implement it.

Due to the experience of writing the pseudo-OO Unilambda in C (see below), and to the apparent lack of an obfuscated object-oriented language, I created one named STOOPID: "Shows That Object-Oriented Programming Is Dumb". Like Unlambda, STOOPID has no mutation; like 'L', STOOPID has a prose syntax; like BAK, STOOPID has two stacks for storage; unlike most OO languages, STOOPID completely lacks inheritance! Also like 'L', STOOPID exists only in incomplete form at the moment, but people looking for some fun should read the STOOPID syntax and semantics specification.

I created a second version of BAK, and created a new version of the BAK interpreter to correspond. From an e-mail message I wrote about it:

BAK's second version, which was actually implemented, was more of a stylization of the original language. There would have been an "alternate LIFO", but unlike Funge-98 only rudimentary operations could be performed on it.

Here's a reference for the new BAK vs. old BAK:

Old instructions (considered obsolete):

And an earlier passage from the message quoted above:

Fromage was to have a second version, and so was BAK. The Fromage second version would have added a rotating list of pointers to the same array (not different arrays as in DoubleF***). Rudimentary macros would also have been included. The number of instructions would have risen from 10 to 16. The EOF semantics were also to change.

My various interpreters for the obfuscated creations of others are Unilambda, an Unlambda interpreter, bacfrink, a BrainF*** interpreter/optimizing compiler, and worb-i, a noit o' mnain worb interpreter.

The major obfuscated languages:

Other obfuscated language pages:

Hunt the Wumpus

Here is the obligatory reference to the classic game named 'Hunt the Wumpus' (or simply 'Wumpus'). Rather than provide a version of the game in source code form (although I intend to do this eventually), this links to other Wumpus sites, many of them online playable versions.