Symbolic machine code
In 1967 I started programming a Ferranti Argus minicomputer. It had a primitive assembler that alllowed addresses such as v12, v13, etc. So not a fully fledged assembler by the standards of the contemporary IBM 1620, another machine I used.
I later learned that EDSAC programs were written in a similar primitive assembler: clearly an ancesral work.
Neither EDSAC nor Argus had floating point hardware, so for science and engineering calculations you had to understand scaled fraction arithmetic. Not many people did.