Esoteric Languages

Definitely worth your time.

What and Why

An esoteric language, also known as an esolang, is a language that is not intended to be used, but that at least serves some interesting purpose, generally in relation to to one or more of the following areas:

Time for a very brief tour of a handful of such languages. For a huge list of esolangs and comprehensive coverage of each, see esolangs.org.

Themed Languages

These tend to be creative or funny or both.

LOLCODE

A language resembling the speech of the LOLcats internet meme from the early 2000s.

Glowup Vibes

A JavaScript dialect using GenZ slang and aesthetics.

ArnoldC

A language based on the one-liners of Arnold Schwarzenegger.

Chef

A language where programs are written as recipes.

Shakespeare

A language where programs resemble Shakespearean plays.

Rockstar

A language in which programs are song lyrics influenced by hard rock and power ballads.

Theory Connections

Brainf**k

Binaryf**k

Lenguage

Golfing Languages

In golf, the lowest score wins. In code golfing, you try to write a program to solve a given problem in the fewest number of bytes. Some languages have been specially crafted to enable one to write exceeding small and dense programs. By the way, you might really enjoy codegolf.stackexchange.com.

GolfScript

Pyth

CJam

Jelly

05AB1E

Vyxal

Multidimensional Languages

Befunge

AsciiDots

Piet

Evil Languages

Whitespace

A language in which the only meaningful characters are spaces, tabs, and newlines.

Unreadable

A language in which the only allowable characters are ' (apostrophe) and " (quotation mark). No other characters are allowed, not even spaces or newlines.

Malbolge

A language designed to be almost impossible to write code in.

Where to Learn More

There are many resources for learning about esoteric languages. Here are a few:

Recall Practice

Here are some questions useful for your spaced repetition learning. Many of the answers are not found on this page. Some will have popped up in lecture. Others will require you to do your own research.

  1. What is an esoteric programming language?
    An unconventional language not intended to be used but rather studied for its theoretical, philosophical, or creative value.
  2. What are some of the areas that esolangs are connected to?
    Computation theory, philosophy of language, creativity, optimization, humor, and evil.
  3. What are some examples of themed languages?
    LOLCODE, Glowup Vibes, ArnoldC, Chef, Shakespeare, Rockstar.
  4. What are some examples of theory-connected languages?
    Brainf**k, Binaryf**k, Lenguage.
  5. What are some examples of golfing languages?
    Pyth, CJam, 05AB1E.
  6. What are some examples of multidimensional languages?
    Befunge, AsciiDots, Piet.
  7. What are some examples of evil languages?
    Whitespace, Unreadable, Malbolge.

Summary

We’ve covered:

  • What an esoteric language is
  • Why study esoteric languages
  • Various programming languages roughly organized by category
  • Additional resources