An interpreter for an esoteric programming language (or "esolang") whose name is unfortunately not suited for use here. ------------------------------------------------------------------------- Each character is its own command (sort of like a Scratch block with no parameters). There are a total of eight commands, scroll downwards for a list. By default each command is executed in order, but [ and ] can create loops. ------------------------------------------------------------------------- MEMORY: Memory is limited to a list of values; these values are called cells. Cells can store the values 0, 1, 2, 3, 4, ..., 255 (that is, a range of 0 to 255), and they are always integers. There are infinite cells. All cells start at zero. Clicking the "TOGGLE CELLS" button toggles the visibility of the cell list. For an example of this, try running an example program (in Notes and Credits) and clicking the button. ------------------------------------------------------------------------- COMMANDS: + increments the current cell. - decrements it. > goes to the next cell. < goes to the previous cell. , gets a single character of ASCII input from the user. . outputs the value of the current cell, as ASCII. [ skips everything up to the matching ] character if the current cell is EQUAL to zero (0); if the current cell is NOT zero, then this command does nothing. ] goes back to the matching [ if the current cell is NOT EQUAL to zero (0); if the current cell IS zero, then this command does nothing. [ and ] must ALWAYS be matched. For example, []] and ][ are invalid programs. All characters other than +-><,.[] are completely ignored. If you do not use at least one period (.) in your code, the Output variable will remain empty. Similarly, no user input will be taken if you have no commas (,) in your code.
This language is not mine, credit goes to Urban Müller. Scroll down for some example programs. See also https://esolangs.org ------------------------------------------------------------------------- Note that input is always capitalised due to Scratch's unfortunate limitations, so that if you input a lowercase letter, it will be treated as an uppercase letter. ------------------------------------------------------------------------- EXAMPLE PROGRAMS: A program which simply outputs a single character (input by the user) is as follows (yes, just two characters long): ,. A program which outputs "Hello World!" is as follows: ++++++++[>++++[>++>+++>+++>+<<<<-]>+>+>->>+[<]<-]>>.>---.+++++++..+++.>>.<-.<.+++.------.--------.>>+.>++. ------------------------------------------------------------------------- The cat is for decoration. For an explanation of the "TOGGLE CELLS" button, see the "MEMORY" section of Instructions.