OIL

OIL is an esoteric programming language made by MDFL L3viathan that stands for Overly Introspective Language. It is turing-machine-like, but with random access and a couple of high-level quirks.

Language description
OIL has an infinite array of values that is initially read from an OIL source file, one value per line. It also has a read-write head with jumping abilities that starts at position 0 (the first line). There's no seperation between code and memory.

"Syntax"
The code consists of a newline-separated series of values. Values are either unicode strings or integers, and will freely convert between eachother when needed: A string that is handled numerically (e.g. incremented) is seen as 0, an integer that is used as a string behaves as a string representation of itself. The read-write head moves in one direction, usually forwards and reads commands, which may then instruct it to read additional values. Whenever a value is to be read from an unassigned cell, the value is 0, but if the head is to read a command from an unassigned cell, the program execution is aborted. An unassigned cell can be written to without issues, it is an assigned cell afterwards. Any cell that corresponds to a line in the script file starts as assigned, any other cell as unassigned. Once a cell is assigned, it can never become unassigned.

Commands
Most commands (all except any kind of jump and reversing) will advance the head by one position after they are done reading all of their arguments, which is ommitted in the following list.

Implementations
An official implementation as well as a more in-depth description of the language can be found here. There's also an implementation written in Rust.

Hello world
Hello World

4

Quine
0

0

1

1

1

4

1

11

4

1

11

1

2

2

1

12

18

10

18

1

32

22

1

18

26

4

26

8

18

11

6

17