walls

From Esolang
Jump to navigation Jump to search
This article is not detailed enough and needs to be expanded. Please help us by adding some more information.

in walls you use a logic of a maze to run instructions

syntax

in walls there is places where numbers is stored. the program pointer itself has a stack. then the primary memory is a cell based strip

0: 0 is the path and is followed by the program pointer
1: 1 is the walls. the program pointer can't go into walls
>: move the memory pointer to the right
<: move memory pointer to the left
number: if you put a number on the track then the program pointer will pick it up and store it in the stack for later use on the memory band. to use a 1 or a 0 you type a # in front of it
!: a key. you can name keys using only numbers. keys are used for doors or ~. you put the number the key in front of it
~: a door. you name doors with a number and the corresponding key. after the door has been opened the program pointer can pass through it like a 0. else it behaves like a 1. you put the number of the door in front of the symbol
o: a hole. add the number of the current key to the current memory cell.
"o": a hole but put it in as a ascii character
/: print the current memory cell
"/": ascii variant of /
=: go left if the current memory cell is zero. else this operator behaves like 0