Courses & TutorialsProgramming
Awesome Esolangs – Massive Collection of 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
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 offuscated language with a minimal implementation.
- Fetlang – Designed such that source code looks like poorly written fetish erotica.
- Folders – Code written with folders.
- 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 Easter 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.
- 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.
- 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.
- 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.
- 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
- 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.
Articles
- 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.
Community
- Anarchy Golf – Informal golfing problems server.
- Code Golf Stack Exchange – Golfing problems and answers.
- Freenode IRC Channel – The #esoteric IRC channel on freenode.
- Reddit Esolangs – Reddit community on esolangs.