/EsotericIDE

IDE (Interpreter/Debugger Engine) for esoteric programming languages. Allows step-by-step debugging and shows a watch window during debugging. Modular design allows easy adding of new languages.

Primary LanguageC#MIT LicenseMIT

Esoteric IDE

Esoteric IDE is an interpreter and debugger for some esoteric programming languages (or esolangs).

Features

  • Allows you to run code in any supported esolang
  • Allows you to set breakpoints
  • Allows you to debug through code step by step
  • Displays the execution state (program state) at every step (kinda like a watch window)
  • In some esolangs, displays information about the instruction the cursor is on

Supported Languages

In chronological order of implementation in Esoteric IDE:

  • Sclipting — Similar to GolfScript but using Chinese characters.
  • Ziim — 2D language using only arrows (← ↑ → ↓ etc.).
  • Brainfuck — The classic. Supports many different flavours, e.g. cells can be byte-size or arbitrary-size; output can be as numbers or as Unicode characters.
  • Quipu — Inspired by the ancient Inca’s quipu system of recording information as knots in a thread, thus also known as talking knots.
  • Unreadable — Consists only of apostrophe (') and double-quote (") characters.
  • Mornington Crescent — Travel on the London Underground, but remember to always come back to Mornington Crescent.
  • Hexagony — Program instructions and memory locations are laid out in a 2D hexagonal grid.
  • Labyrinth — Two-dimensional stack-based language where the code can self-modify by applying cycling rotations of rows or columns of characters.
  • Stack Cats — Reversible programming language in which every program must be a mirror image of itself.
  • Whitespace — Only space, tab and newline are significant.
  • Runic — Two-dimensional stack-based language with multiple instruction pointers, limited memory per pointer, and unicode modifier symbols.
  • Ndim — Multidimensional language inspired by Befunge in which values you want to keep in memory must be written into the code space.

How to compile

You have several options:

  • Clone and compile.
  • Download the full source from the Releases page. This contains the source for Esoteric IDE, but not the git repo.
  • If you just want compiled binaries of the newest commit (as opposed to the newest release), you can download those from the artifacts page on AppVeyor.

Build status