Laser Pointer

From Esolang
Jump to navigation Jump to search

Laser Pointer is a 2D esolang created by User:AnotherUser05. This is basically a different version of Ice box.

Syntax

Lasers actiavte anything that touches it.
Any character that's noramlly used for a command used in an input, then it'll be ignored.

--Requires Activating--
> Laser shooter (right)
< Laser shooter (left)
v Laser shooter (down)
^ Laser shooter (up)
@ Activate surrounding tiles each frame.
& Activates surrounding tiles.
$ Creates a new variable with the name equal to the character to the right or left.
= Set the variable to the left to the character to the right.
* Add the value from the right to the end of the variable to the left.
` Add the value from the right to the variable to the left.
~ Subtract the value from the right to the variable to the left.
: Output the variable to the right.
; Gets an input and stores it into the variable to the right.
% Pushes anyhting that's on the opposite side of activation. Basically a piston.
? If the variable to the right or left does not equal to 0, then follow the pipes. Else ignore.
. Terminate the program.

--Misc--
# Blocks lasers.
0-9 Acts as portals.
| Upwards pipe.
- Sideways pipe.
+ Pipe connector.
/ Mirror
\ Mirror
! Activates the surrounding tiles upon program start.

Examples

Hello World

                                       .
!v /  \  /  \  /  \  /  \  /  \  /  \  :P
 $P*HP*eP*lP*lP*oP*,P* P*WP*oP*rP*lP*dP*!
 \ /  \  /  \  /  \  /  \  /  \  /  \  /

Truth Machine

!>$P\ +-&v  /\
    ;P| v    :P
   P?-+ 1\   /
    :P      \
    .   1   %
        \   /

Cat Program

!
v
$c
;c
:c
.

Not finite loop

  1
  %
  /
!>  \
v \ /
1