the phase of a compiler in which executable output code is generated from intermediate code.
translating a program to a linear (non-nested) structure, to a string of low-level instructions or &"byte codes&" of a bl virtual machine
because we are from the same mother