Para ejecutar un programa escrito en cualquier lenguaje de programación se requieren varias etapas: primero se escribe el código fuente con las instrucciones, luego un compilador o intérprete traduce este código a un código objeto en lenguaje de máquina, y finalmente este código objeto puede ejecutarse. Los compiladores traducen programas a código objeto mientras que los intérpretes analizan y ejecutan programas de alto nivel.