ObjectPar

From Esolang
Jump to navigation Jump to search

It uses only objects. Each data is an object, including one object for each integer number.

+ Push pointer to '+' object.
- Push pointer to '-' object.
# Push pointer to number zero object.
[...] Makes a new blank object containing this code, pushes onto stack.
? Push pointer to self.
= Pop A,B if both point to same thing, skip to next = sign in current object code.
@ Pop A. Copy object A, and execute its code.
) Pop A,B. Push value of variable called B of object A.
( Pop A,B,C. Set value of variable called B of object A to value C.
$ Pop A,B. Push object called (A,B). Is blank (first time), but code is concatenation of codes A and B.
/ Swap top 2 of stack.
: Discard top of stack.
;... If ... is a digit 0 to 9, swap top of stack with items (n) spaces down.

I think it would be Turing-Complete.. If not, post on it and see what need to be fix.

See also