Skip to content

Instantly share code, notes, and snippets.

@AMiller42
Created July 27, 2021 18:57
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save AMiller42/75ec8612cee9f1f779567faa56390398 to your computer and use it in GitHub Desktop.
Save AMiller42/75ec8612cee9f1f779567faa56390398 to your computer and use it in GitHub Desktop.
Prompt: I’ve come up with an idea for a new esolang, called ”arrayjump”.
Output: I’ve called it this because it involves arrays. And jumps.
Here are the rules:
1) An array is a string of characters, where the characters are only ‘0’ and ‘1’.
2) You have a program, called an arraycode. The arraycode is made of a number of parts, each of which is a string of ‘0’s and ‘1’s, and a value. The value indicates how many characters long the string is. The parts are called indices.
3) The index at index 0 is called the main index.
4) There are a number of commands you can use, and they are all based on the following command:
name: value
where name is the name of the command, and value is the value of the command. The value is also the index of the command.
5) If a command has a ‘-‘ in its name, it means it is not executed if the value of the command is 0.
6) If a command has a ‘!’ in its name, it means it is not executed if the value of the command is 1.
7) If a command has a ‘@’ in its name, it means it is executed if the value of the command is 1.
8) If a command has a ‘#’ in its name, it means it is executed if the value of the command is 0.
9) The value of the main index is set to the value of the program at the end of the program.
10) The index of the program is set to 0 at the start of the program.
11) The index of the program is set to 1 at the start of the program.
12) The value of the program is set to 0 at the start of the program.
13) The value of the program is set to 1 at the start of the program.
Here are some examples of arraycodes:
101010 2 Add 1 to value at main index 010101 2 Set value at main index to 1 100010 1 Add 1 to value at index 0 010101 2 Set value at index 0 to 1 110110 1 Set value at index 0 to 2 001010 - Set value at index 0 to 0 010010 - Set value at index 0 to 0 011111 - Set value at index 1 to 2 001010 - Set value at index 1 to 0 011111 - Set value at index 2 to 2 001010 - Set value at index 2 to 0 011111 - Set value at index 3 to 2
Here are some examples of arraycodes that do not work:
010101 - This does not set the main index to 1 010101 2 - This does not set the main index to 1 010101 2 - This sets the main index to 2 010101 2 - This sets the main index to 2 010101 2 - This does nothing at all 010101 2 - This sets the main index to 1 010101 2 - This sets the main index to 1 010101 2 - This sets the main index to 1 010101 2 - This sets the main index to 1 001010 - This does nothing at all 001010 - This sets the main index to 0 001010 2 - This does nothing at all 001010 2 - This sets the main index to 2 011111 - This sets the main index to 2 011111 - This sets the main index to 2 011111 - This sets the main index to 2 100010 1 - This sets the main index to 1 100010 1 - This sets the main index to 1 100010 1 - This sets the main index to 1 100010 1 - This sets the main index to 1 100010 1 - This sets the main index to 1 100010 1 - This sets the main index to 1 100010 1 - This sets the main index to 1 100010 1 - This sets the main index to 1 100010 1 - This sets the main index to 1 100010 1 - This sets the main index to 1 100010 1 - This sets the main index to 1 100010 1 - This sets the main index to 1 100010 1 - This sets the main index to 1 100010 1 - This sets the main index to 1 100010 1 - This sets the main index to 1 100010 1 - This sets the main index to 1 100010 1 - This sets the main index to 1 100010 1 - This sets the main index to 1 100010 1 - This sets the main index to 1 100010 1 - This sets the main index to 1 100010 1 - This sets the main index to 1 011111 - This sets the main index to 2 011111 - This sets the main index to 2 011111 - This sets the main index to
Yeah... It kinda died at the end there.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment