When the esolang wiki page for this esolang has its categories set, the language is to change. It should change in computational class, dimensionality, paradigm, implementation status and brainfuck derivative status each time.
That being said, the language works as follows.
How it works
A program consists of arbitrary actors. An actor consists of a set of coordinates and an infinite tape of integers, with values initialized to 0.
All actors have the same program.
A program is a list of instructions, which can have arguments.
Arguments can be integers or relative references to the tape. notated here as ^(number). ^0 refers to the current selected cell, for example.
There is an actor at 0, 0.
+ x y: Add x and y, store in tape. - x y: Subtract. * x y: Multiply. / x y: Integer divide. % x y: Modulo. i: Take an ascii input, store in tape. o x: Ascii output. p x: Blocking write to any adjacent actor. g: Blocking read from any adjacent actor. m x y: Move relatively. Actors may overlap. x: Terminate this actor. c x y z: Create a new actor at relative x, y, starting from instruction z. ^ x: Advance the tape x spaces.