Program: sequence of instructions describing how to perform a certain task
The basic instructions of a computer are not more complicated than: Add 2 numbers Check number to see if it is Zero Copy a piece of data from one part of the computer memory to another
Structuring computers as a sequence of abstractions, with each abstraction building a layer on top of the previous one.
L0 (low level language): Machine Language: primitive instructions in binary that a computer can understand L1 (higher level language): New human created instructions, cannot be directly exectued by the machine
One approach is stranslation which translates each instruction of the program of L1 to L0
An interpreter is a program writtin in L0 that takes another L1 program as input and reads each instruction from the L1 program one by one and executes the equivalent behavior with L0 instructions