We are currently working on new rules for what content should and shouldn't be allowed on this website, and are looking for feedback! See Esolang:2026 topicality proposal to view and give feedback on the current draft.
LABEL
LABEL is a programming language based on goto-like jumps and loops and whose memory consists entirely of how many jumps have been made.
Syntax
Every command takes a label as input
| Command | Description |
|---|---|
/
|
Ends a subroutine if it matches the label |
\
|
Ends a subroutine if it matches the label |
>
|
Go to the nearest /label searching forwards as a subroutine |
<
|
Go to the nearest \label searching backwards as a subroutine |
]
|
Go to the nearest \label searching forwards as a subroutine |
[
|
Go to the nearest /label searching backwards as a subroutine |
)
|
Go to the nearest /label searching forwards within this subroutine |
(
|
Go to the nearest \label searching backwards within this subroutine |
}
|
Go to the nearest \label searching forwards within this subroutine |
{
|
Go to the nearest /label searching backwards within this subroutine |
:
|
Do the next command as many times as label has been run |
!
|
Output the number of times label has been run, as an ASCII character |
?
|
Run label an inputted number of times, using whichever run command occurs the most |
.
|
The next time you would run label, don't |
,
|
The next time you would stop running label, don't |
~
|
Toggle all run commands that refer to label |
+
|
Jump ahead a number of commands equal to the label's run count |
-
|
Jump back a number of commands equal to the label's run count |
Rule Clarifications
1. If a label can't be found, it will start from the beginning of the program and move right or at the end of the program and move left, respectively.
2. When counting how many times label X has been run, subtract the number of times it has been run backward from the number of times it has been run forward.
3. Labels can have numbers at the end, which simply differentiate between different versions of the root label, and affect the same value in memory.