# 1- ¿Qué es el Scope?

Uno de los paradigmas más fundamentales de casi todos los lenguajes de programación es la capacidad de almacenar valores en variables, y posteriormente recuperar o modificar esos valores. De hecho, la capacidad de almacenar valores y extraer valores de variables es lo que da un estado de programa.

Sin tal concepto, un programa podría realizar algunas tareas, pero serían extremadamente limitados y terriblemente poco interesantes.

Pero la inclusión de variables en nuestro programa engendra las preguntas más interesantes que ahora abordaremos: ¿dónde viven esas variables? En otras palabras, ¿dónde están almacenadas? Y, lo más importante, ¿cómo nuestro programa los encuentra cuando los necesita?

Estas preguntas hablan de la necesidad de un conjunto bien definido de reglas para almacenar variables en algún lugar, y para encontrar esas variables en un momento posterior. Llamaremos a ese conjunto de reglas: Scope (Ámbito).

Pero, ¿dónde y cómo se establecen estas reglas de ámbito?
