@neauoire one of my favorite esolangs is ByteByteJump, which is essentially nothing but self modifying code. The only instruction is: copy a byte from location A to location B, then unconditional jump to location C. This is sufficient for Turing completeness. https://esolangs.org/wiki/ByteByteJump
There is also some belief that ByteByte, a variant that just has a cyclic program counter, is also Turing complete, although that is unproven: https://esolangs.org/wiki/ByteByte
Fun as minimal examples.
@R4_Unit ah yes! I'm well familiar with this one and other OISC that uses modify the state like that.