Hopscotch

A simple esoteric programming language.

Overview
Hopscotch programs are made of the commands +><^/\*?@_ and integer literals. The commands are chained linearly, but integer literals and the ? can cause the instruction pointer to jump.

Memory
Hopscotch has a stack of theoretically unlimited length. Additionally, it has a register. Each command is passed the value on the register, and the value it return is placed on a register. When the code jumps, the register may be affected. Hopscotch programs are executed according to an instruction pointer, which is incremented after each command, and can be further modified by certain commands.

Code
All characters except +><^/\*?@_0123456789- are ignored. Each command is one token long. Each of +><^/\*?@_ is a token individually, and successive 0123456789- are grouped into a single token. This token is interpreted as a single integer. Sequences such as 123-456 are illegal, as `123-456` is not a single integer. Sequential integers must be separated with _ or another command. Code is executed one command at a time, beginning with the first command and terminating if the instruction pointer points beyond or before the code.

Commands
There are ten commands and integer literals in Hopscotch

Integer Literals
An integer literal is a relative jump. The normal increment of one of the instruction pointer is replaced by an increment by the integer. If the token immediately before the destination of a jump is an integer literal, then the register is set to that value.

Computational Class
The creator believes that Hopscotch is Turing-Complete, as he believes that BrainF*ck can be implemented. There is no formal proof.

Helpful hints
To represent data, 3_nc works, where n is an integer literal to have the register set to it as command c is executed.

External Resources
[Spec and Work-In-Progress Implementation]