CellArg
Paradigm(s)  imperative 

Designed by  TheFloatingPixel 
Appeared in  2023 
Memory system  Cellbased 
Dimensions  onedimensional 
Computational class  Unknown 
Reference implementation  [1] 
Influenced by  brainfuck 
File extension(s)  .ca 
CellArg is a language created by User:TheFloatingPixel in 2023. The name 'CellArg' comes from how it handles instruction parameters  before execution, the arguments are replaced with the values of the respective cells.
Overview
CellArg (similarly to brainfuck) uses a cellbased memory system. The initial value of all cells is 0, except for cell #1, the value of which is initially 1. CellArg programs consist of a list of instructions; anything that isn't a valid instruction is ignored. The instructions are extracted from the string using the regex [\+\;#$]( ?[09])+
. Before execution, the parameters of the instruction are replaced with the values of the respective cells.
This means that if the memory was in the following state
Cell #0  Cell #1  Cell #2 
2  1  0 
the instruction + 0 1
would result in the instruction + 2 1
, thus adding 1 to the cell #2. In this situation, to add 1 to the cell #0, we would have to use the instruction + 2 1
.
There are 5 available instructions (all instructions are described as after the replacement):
Instruction  Description 

+ (cell1) (cell2)

Add the value of cell number (cell2) to the value of cell number (cell1) 
 (cell1) (cell2)

Subtract the value of cell number (cell2) from the value of cell number (cell1) 
# (cell1)

Print the value of cell number (cell1) converted to a Unicode character to the standard output 
$ (cell1)

Ask for onecharacter long input from the user, and save it to the value of the cell number (cell1) 
; (cell1) (cell2)

Jump to instruction with the number of the value of the cell number (cell1), if the value of the cell number (cell2) is different than 0. 
Examples
Hello World (with explanations)
Make the value of cell number 0 = 10 to access cell number 10 + 2 1 add 1 to cell 0 + 2 1 add 1 to cell 0 + 2 2 add cell 0 to itself, multiplying it by two + 2 1 add 1 to cell 0 + 2 2 add cell 0 to itself, multiplying it by two By the end of this part, the value of cell 0 is 10. + 0 5 Add 10 to cell number 10. This is possible, because we just made the value of cell 0 = 10. Thanks to that, after the replacement the parameters of this instruction will be 10 and 0, adding the value of cell 0 to the cell number 10  5 0 Subtract the value of cell 0 from itself, effectively resetting it to 0 The following part is just a bunch of simple additions and subtractions, with a few prints sprinkled in. Print H + 5 10 + 5 10 + 5 10 + 5 10 + 5 10 + 5 10 + 5 10 add 70 to cell number 0 + 5 1 + 5 1 add 2 to cell number 0 # 5 print value of cell number 0 Print e + 5 10 + 5 10 + 5 10 add 30 to cell number 0  5 1 subtract 1 from cell number 0 # 5 print value of cell number 0 Print ll + 5 10 add 10 to cell number 0  5 1  5 1  5 1 subtract 3 from cell number 0 # 5 # 5 print value of cell number 0, twice Print o + 5 1 + 5 1 + 5 1 add 3 to cell number 0 # 5 print value of cell number 0 Print ,  5 5 reset cell 0 + 5 10 + 5 10 + 5 10 + 5 10 add 30 to cell number 0 + 5 1 + 5 1 + 5 1 + 5 1 add 4 to cell number 0 # 5 Print " "  5 10 subtract 10 from cell number 0  5 1  5 1 subtract 2 from cell number 0 # 5 print value of cell number 0 Print W + 5 10 + 5 10 + 5 10 + 5 10 + 5 10 add 50 to cell 0 + 5 1 + 5 1 + 5 1 + 5 1 + 5 1 subtract 5 from cell number 0 # 5 print value of cell number 0 Print o + 5 10 + 5 10 add 20 to cell 0 + 5 1 + 5 1 + 5 1 + 5 1 add 4 to cell 0 # 5 print value of cell number 0 Print r + 5 1 + 5 1 + 5 1 add 3 to cell 0 # 5 print value of cell number 0 Print l  5 10 subtract 10 from cell 0 + 5 1 + 5 1 + 5 1 + 5 1 add 4 to cell 0 # 5 print value of cell number 0 Print d  5 10 subtract 10 from cell 0 + 5 1 + 5 1 add 2 to cell 0 # 5 print value of cell number 0 Print !  5 5 reset cell 0 + 5 10 + 5 10 + 5 10 add 30 to cell 0 + 5 1 + 5 1 + 5 1 subtract 3 from cell 0 # 5 print value of cell number 0
Hello World (without explanations)
+ 2 1+ 2 1+ 2 2+ 2 1+ 2 2+ 0 5+ 5 10+ 5 10+ 5 10+ 5 10+ 5 10+ 5 10+ 5 1+ 5 1# 5+ 5 10+ 5 10+ 5 10 5 1# 5+ 5 10 5 1 5 1 5 1# 5# 5+ 5 1+ 5 1+ 5 1# 5 5 5+ 5 10+ 5 10+ 5 10+ 5 10+ 5 1+ 5 1+ 5 1+ 5 1# 5 5 10 5 1 5 1# 5+ 5 10+ 5 10+ 5 10+ 5 10+ 5 10+ 5 1+ 5 1+ 5 1+ 5 1+ 5 1# 5+ 5 10+ 5 10+ 5 1+ 5 1+ 5 1+ 5 1# 5+ 5 1+ 5 1+ 5 1# 5 5 10+ 5 1+ 5 1+ 5 1+ 5 1# 5 5 10+ 5 1+ 5 1# 5 5 5+ 5 10+ 5 10+ 5 10+ 5 1+ 5 1+ 5 1# 5
Truth machine
+ 5 1+ 5 1+ 5 5+ 5 1+ 5 5+ 0 5 5 5+ 5 1+ 5 1+ 5 1+ 5 1+ 5 1+ 5 1+ 0 5+ 6 1 5 5+ 5 10 5 1 5 1+ 0 5+ 8 1$ 5+ 6 5 5 10 5 10 5 10 5 10 5 1 5 1 5 1 5 1 5 1 5 1 5 1 5 1+ 8 10+ 8 10+ 8 10+ 8 10 8 1# 6; 8 5
One Time Cat
$ 2# 2