Skip to main content

Awesome Esolangs

Curated list of awesome esoteric programming languages, resources and related projects.

"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

Contents

Languages

  • 1+ - A surprisingly user-friendly language with a highly-limited instruction set.
  • 78 - A single-character command language focused around the numbers 7 and 8.
  • ajsone - Language defined completely in JSON.
  • AlmostBinary - Code in binary and run on any platform.
  • ArnoldC - Based on the best one-liners of Arnold Schwarzenegger.
  • Befunge - Two-dimensional language.
  • Brackets - Language made of brackets, a lot of brackets.
  • Brainfuck - Minimalist language using only 8 single-character commands.
  • C Flat - Musical language focused on sound rather than notation with creative freedom in mind.
  • 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 using "." symbol only.
  • Emojicode - Full-blown programming language consisting of emojis.
  • Enterprise™ - Non deterministic unnecessarily statically typed language.
  • False - Heavily obfuscated language with a minimal implementation.
  • Fetlang - Designed such that source code looks like poorly written fetish erotica.
  • FlipJump - 1 instruction: Flip a bit, then Jump. The simplest OISC.
  • Folders - Code written with folders.
  • FreakC - Full-blown programming language with NSFW contents and memes.
  • Fugue - Music as source code.
  • Golfscript - Stack oriented, aimed at solving problems in as few keystrokes as possible.
  • Haifu - Designed with the core values of Eastern philosophy in mind.
  • INTERCAL - Parody language intended to be completely different from other languages.
  • Japt - Reduced JavaScript for golfing.
  • Jelly - Golfing language based on J.
  • JellyScript - Brainfuck-based with delicious jelly.
  • JSFuck - Esoteric programming style based on the atomic parts of JavaScript.
  • Lazy K - Minimal, turing-complete pure functional language without extra features.
  • legit - Programs defined entirely by the graph of the git repository instead of its contents.
  • 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.
  • Ni - Brainfuck-based with more helpful instructions.
  • Omgrofl - Syntax resembling Internet slang.
  • Ook! - Brainfuck-based language, where the commands are orangutan words.
  • Orca - Livecoding environment to quickly create procedural audio sequencers.
  • Piet - Language in which programs look like abstract paintings using colors as code. Named after Piet Mondrian.
  • RASEL - Fungeoid with no limits on program space, float precision, and with a bit of random access to stack.
  • reMorse - Morse-styled language.
  • Rockstar - Designed for creating computer programs that are also song lyrics.
  • Shakespeare - Language where the code appear to be Shakespearean plays.
  • Spooky - The scariest programming language 🎃 💀.
  • Suzy - 3D language inspired in Befunge.
  • Technologic - Language in which programs look like the lyrics to the Daft Punk song Technologic.
  • Thue - Matrioshka language based on nondeterministic string rewriting of a semi-Thue grammar.
  • Tru - A stack-based language with prefix-free brackets.
  • TrumpScript - Make Python great again.
  • Turtle - Uses long-term storage for memory use.
  • 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.
  • Watson - Stack-based Turing-incomplete configuration files.
  • 文言 (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.

Algorithms

  • π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.

Others

  • asmbf - The only true brainfuck assembler toolkit.
  • CSS-only-chat - A truly monstrous async web chat using no JS whatsoever on the frontend.
  • FizzBuzzEnterpriseEdition - Simple FizzBuzz game implemented under the most strict enterprise standards.
  • MalbolgeLisp - A Lisp interpreter in Malbolge Unshackled.
  • NoCode - Secure and reliable applications. Write nothing; deploy nowhere.
  • Petrovich - Operating System concept based on random actions and rewards/punishments.
  • vapor.js - The World's Smallest & Fastest JavaScript Library.

Resources

Articles

Community

Logo used with permission of David Morgan-Mar

Contribute to this list: https://github.com/angrykoala/awesome-esolangs