P1eq

P1eq (plus one and branch if equal) by User:Oleg is a Subleq derivative with an instruction A B C and the meaning B=A+1 and jump to C if B does not change.

Hello, world!
Using the Subleq assembly language "Hello, world!" program is straightforward # output *p; p a    a:0 (-1) # p++ p p    # check if p!=E p t    E t (-1) Z Z0 0 . p:H-1 Z:-1 Z0:0 t:0 . H: "Hello, World!\n" E:E-1

Arithmetic sum
The instruction is probably enough to make more complex computation. For example, the following program prints "2" (ASCII value 50) after summing x and y. t1 t1    y y     t1 t2     x t2 end Z Z0 0 end: y (-1) Z Z0 (-1) . Z:-1 Z0:0 t1:0 t2:0 x:30 y:20

Implementation
Use sqasm.cpp to compile assembly program into the P1eq code. Then sqrun.cpp with the option (-p) to run the compiled code.