Si observa Wikipedia, puede ver que una variable en la programación es un área de memoria con nombre, o de otra manera dirigida, cuya dirección se puede utilizar para acceder a los datos. La palabra de esta definición a la que me gustaría llamar su atención es datos. ¿Es realmente así que en los lenguajes de programación en los que escribimos, las variables se usan solo para acceder a los datos?
Por ejemplo, escribo en PHP. Y en él, como en otros lenguajes de programación, las variables, además del acceso a datos, también se utilizan para acceder a objetos (instancias de clases) y matrices (asociativas y ordinarias) y algunas otras cosas. Los datos (cadenas, enteros, números de coma flotante, valores booleanos), objetos (instancias de clase) y estructuras (matrices asociativas y regulares, si toma PHP) para una persona son entidades esencialmente diferentes (abstracciones), y sería razonable, en nuestros lenguajes de programación, trátelos como cosas diferentes, ignorando el hecho de que para una máquina son uno y lo mismo (áreas de memoria con nombre). Para hacer esto, propongo, en lugar de variables, comenzar a usar entidades como, por ejemplo:
un objeto ,
estructura ,
datos .
Tal reemplazo hace posible separar mentalmente cosas tan diferentes y no tener nada en entidades comunes (abstracciones) como
objetos ,
estructuras y
datos .
Ya se está preparando un RFC para PHP sobre este tema.
PS
En general, no funcionó crear un RFC para PHP, ya que los desarrolladores de PHP dijeron que no querían gastar los caracteres que serían necesarios para implementar esta idea. Agregaré de mí mismo que en PHP todavía no se pudo implementar porque tiene una tipificación dinámica. Pero! En un lenguaje con escritura estática, donde los tipos no cambian, esto puede implementarse. Por lo tanto, espero que los desarrolladores de dichos idiomas dirijan su atención a la idea propuesta.