Suponiendo que el intérprete para el idioma (Puede ser cualquier cosa de PHP a Ruby) está escrito en C. ¿Cómo son variables (o estructuras de datos más complejas no solo que contienen nombre y valor), que están definidas por el guión que se está ejecutado, almacenado y leído?¿Cómo los lenguajes de scripting establecen/modifican/leen variables?
Yo, con mi poco conocimiento de C, terminaría con la conclusión de que esto solo se puede hacer con una matriz.
// Variable type definition would go here
var* variables;
El tipo var
contendría dos cadenas name
y value
.
Bien. Entonces un script define, por ejemplo: 30 variables. Ahora, si una de las variables tiene que ser leída, la función getVar
(o algo similar) tendría que recorrer las 30 variables y comparar sus name
s con el nombre de la variable solicitada. Imagine que con un ciclo que solicita
¿Lo estoy entendiendo del todo? En caso afirmativo, ¿cómo manejan las variables (moderno?) Los lenguajes de scripting? ¿Cómo se almacenan y leen?
En los idiomas donde las variables están claramente definidas por la sintaxis (PHP:
$myVar
), el intérprete podría reemplazar todas las variables por valores numéricos durante el proceso de análisis. (¿Estoy en lo cierto con eso?) ¿Es este el caso?
@lamas - Buena suerte con eso. Algunas veces querrás sacarte el pelo ... pero los compiladores e intérpretes son geniales. –