Ámbito (programación)

El ámbito determina en qué partes del programa una entidad puede ser usada.

Considere, por ejemplo el programa dadoLa primera línea X=1, crea una variable global x y la inicia en 1.

Si el lenguaje de dicho programa es uno que emplea el ámbito léxico, entonces g imprime y modifica la variable global x (porque g está definida fuera de f), Entonces el programa imprime 1 y luego 2.

Por el contrario, si este lenguaje usa ámbito dinámico, entonces g imprime y modifica la variable local de f llamada x (porque g es llamada desde f), entonces el programa imprime 3 y luego 1 ( En el programa dado, implementado sobre Bash esto ocurre, pues dicho lenguaje emplea ámbito dinámico).

Evaluando x en cualquier contexto siempre se produce con el enlace del tope de la pila.