Yosef Enmanuel Blandin Rios
PreguntaCuando vamos a ejecutar un código ¿primero pasa por el interprete y luego por el compilador, o viceversa?

Irving Juárez
Depende el lenguaje que uses

Jorge Cruz Perez
No, o se compila o se ejecuta, aun Java como menciona Pato es compilado, porque hay un archivo intermedio resultado de la compilación a diferencia de los lenguajes interpretados. El concepto lo entenderas mucho mejor conforme practiques y conozcas de lenguajes, el tip es nunca parar de aprender, saludos :)

Patricio Villarroel Durán
Hola Yosef
En general depende del lenguaje. Hay lenguajes interpretados (como JavaScript, Python, PHP, Ruby) y lenguajes compilados (C, C++, C#, Scala, Go, Pascal, Rust...). Y algunas rarezas como Java que es compilado e interpretado a la vez.
Un lenguaje compilado hace que todo el código deba ser procesado antes de ejecutarse, por lo que si tienes el más mínimo error, la compilación fallará y no habrá ejecución, por lo que tiene un paso más: compilas primero, luego ejecutas. Por cada sistema operativo debes crear un ejecutable compilado distinto. El interpretado se procesa a medida que se va ejecutando, por lo que es agnóstico del SO.
La excepción es Java, que con su filosofia "write once, runs anywhere" primero compila el código para convertirlo en un lenguaje de más bajo nivel llamado bytecode, el cual luego es distribuido a cualquier dispositivo que tenga instalado el Java Virtual Machine. JVM interpreta el bytecode y con eso se ejecuta el programa, logrando así que no debas escribir y compilar para cada S.O. sino que escribes una vez y JVM se encarga del resto (lo cual suena bonito pero tiene sus desventajas)