Este documento discute varios aspectos clave de los lenguajes de programación que deben considerarse antes de construir un compilador. Explica la diferencia entre políticas estáticas y dinámicas, los diferentes tipos de ámbito, la distinción entre estados y entornos, y los métodos de pasaje de parámetros.