Curated list of awesome esoteric programming languages and resources.
"An esoteric programming language, or esolang, is a computer programming language designed to experiment with weird ideas, to be hard to program in, or as a joke, rather than for practical use."
esolang.org
- Ajsone - Language defined completely in JSON.
- Befunge - Two-dimensional language.
- Brainfuck - Minimalist language using only 8 single-character commands.
- Charcoal - Concise language for sketching ASCII art.
- Chef - Programs that look like cooking recipes.
- Chicken - Only 1 valid symbol: 'chicken'.
- ChuckScript - Unary-based language, where the code is a single number.
- DNA# - Language based on the structure of the DNA.
- Dots - A turing-complete language with only one symbol: ".".
- Emojicode - Full-blown programming language consisting of emojis.
- Enterprise™ - Non deterministic unnecessarily statically typed language.
- False - Heavily offuscated language with a minimal implementation.
- Fetlang - Designed such that source code looks like poorly written fetish erotica.
- Fugue - Music as source code.
- Haifu - Designed with the core values of Easter philosophy in mind.
- INTERCAL - Parody language intended to be completely different from other languages.
- JSFuck - Esoteric programming style based on the atomic parts of JavaScript.
- Lazy K - Minimal, turing-complete pure functional language without extra features.
- LolCode - Language with keywords based on the lolcat meme expressions.
- Malbolge - Named after the 8th level of hell, is designed to be as difficult as possible to program.
- Monicelli - Programming using Italian-like gibberish.
- Omgrofl - Syntax resembling Internet slang.
- Ook! - Brainfuck-based language, where the commands are orangutan words.
- Orca - Livecoding environment to quickly create procedural audio sequencers.
- reMorse - Morse-styled language.
- Rockstar - Designed for creating computer programs that are also song lyrics.
- Piet - Language in which programs look like abstract paintings using colors as code. Named after Piet Mondrian.
- Shakespeare - Language where the code appear to be Shakespearean plays.
- Suzy - 3D language inspired in Befunge.
- Thue - Matrioshka language based on nondeterministic string rewriting of a semi-Thue grammar.
- Unary - Brainfuck-based language where all the commands are 0.
- Unlambda - Obfuscated functional programming.
- Velato - Language that uses MIDI files as source, programs are defined by the pitch and order of notes.
- Vigil - Only Vigil is truly vigilant about not allowing code that fails to pass programmatic specifications.
- Wenyan - Closely follows the grammar and tone of classical Chinese literature.
- Whenever - Language that does things whenever it wants.
- Whitespace - Use only white-characters (space, tabs and newlines).
- WordLang - A language based on meaning-like grammar that produces output.
- Z - Use only the letter z.
- ZOMBIE - Inherently evil multithreaded language designed for Necromancers.
- πfs - Pi-based storage system, store your data by searching a matching sequence in pi.
- Stacksort - Sorts a list by searching answers in Stack Overflow and executing code snippets until is sorted.
- Petrovich - Operating System concept based on random actions and rewards/punishments.
- DM's Esoteric Programming Languages - List of esoteric languages and algorithms written by dangermouse.
- Esofiles - The Esoteric Files Archive, an archive of implementations of esoteric programming languages and examples.
- Esolang - Wiki of esoteric programming languages and related Resources.
- Esoteric Codes - Articles and documents collection.
- Rosettacode - Provides examples in different languages, including esoteric languages.
- Wikipedia/Esoteric programming languages - Wikipedia list of esoteric languages.
- Esolang List of ideas - Compilation of ideas for esoteric languages and related.
- Let's Build a Basic Interpreter (Ruslan's Blog) - Series of articles explaining the basics of compilers and interpreters and how to build one.
- Six programming paradigms that will change how you think about coding - Post by Yevgeniy Brikman describing different programming paradigms that are not commonly applied.
- The Fun (and Madness) of Esoteric Programming Languages - Straightforward introduction to esoteric languages with examples.
- On the Turing Completeness Of MS PowerPoint - Turing Machine on PowerPoint.
- Freenode IRC Channel - The #esoteric IRC channel on freenode.
- Reddit Esolangs - Reddit community on esolangs.
The content of this list is available under CC0 public domain dedication.
Logo is used by permission of David Morgan-Mar