Sin embargo, es cada vez más frecuente una combinación de ambas soluciones: un compilador puede traducir el código fuente en alguna forma intermedia (muchas veces llamado "Bytecode"), que luego se pasa a un intérprete que lo ejecuta.