Hacemos una revisión profunda cada escritos de nuestro espacio con el objetivo de mostrarte siempre información más veraz y actual.
Solución:
Dim originalmente (en BASIC) significaba Dimensión, ya que se usaba para definir las dimensiones de un array.
(La implementación original de BASIC fue Dartmouth BASIC, que desciende de FORTRAN, donde se escribe DIMENSIÓN).
Hoy en día, Dim se usa para definir cualquier variable, no solo matrices, por lo que su significado ya no es intuitivo.
Dim
se le han atribuido diferentes significados.
He encontrado referencias sobre Dim
significado “Declarar en memoria”, la referencia más relevante es un documento sobre Dim Statement publicado por Oracle como parte de Siebel VB Language Reference. Por supuesto, puede argumentar que si no declara las variables en la memoria, ¿dónde lo hace? Quizás “Declarar en Módulo” es una buena alternativa teniendo en cuenta cómo Dim
se usa
En mi opinión, “Declare In Memory” es en realidad un mnemotécnicocreado para facilitar el aprendizaje de cómo usar Dim
. Veo “Declarar en memoria” como un mejor significado, ya que describe lo que hace en las versiones actuales del idioma, pero no es el significado correcto.
De hecho, en los orígenes de Basic Dim
solo se usó para declarar matrices. Para las variables regulares no se utilizó palabra clave, sino que su tipo se dedujo de su nombre. Por ejemplo, si el nombre de la variable termina con $
entonces es un string (esto es algo que podría ver incluso en nombres de métodos hasta VB6, por ejemplo Mid$
). Y entonces, usaste Dim
solo para dar dimensión a las matrices (observe que ReDim
cambia el tamaño de las matrices).
En realidad, Importa? Es decir, es una palabra clave que tiene su significado dentro de un lenguaje artificial. No tiene que ser una palabra en inglés o cualquier otro idioma natural. Así que podría significar lo que quieras, lo único que importa es que funcione.
De todos modos, eso no es completamente true. Como BASIC es parte de nuestra cultura, y comprender por qué llegó a ser como es, espero, ayudará a mejorar nuestra visión del mundo.
Me siento frente a mi computadora con el deseo de ayudar a preservar esta pequeña parte de nuestra cultura que parece perdida, reemplazada por nuestra suposición de lo que era. Y así, he buscado en MSDN tanto los CD actuales como los antiguos de la versión de 1998. También he buscado en la documentación del antiguo QBasic. [Had to use DOSBox] y logré obtener un manual de Darthmouth, todo para descubrir cómo hablan sobre Dim
. Para mi decepción, no dicen lo que hace Dim
representar, y solo decir cómo se usa.
Pero antes de que mi esperanza se desvaneciera, logré encontrar esta Guía de uso del sistema de microcomputadoras de la BBC (que dice ser de 1984, y no quiero dudarlo). La Microcomputadora BBC usó una variante de BASIC llamada BBC BASIC y se describe en el documento. Aunque no dice lo que significa Dim
significa, dice (en la página 104):
… puede dimensionar N$ para tener tantas entradas como desee. Por ejemplo, DIM N$(1000) crearía un string array con espacio para 1000 nombres diferentes.
Como dije, no dice eso. Dim
significa dimensión, pero sirve como prueba para mostrar que asociar Dim
con Dimension
era una cosa común en el momento de escribir ese documento.
Ahora, recibí una sorpresa gratificante más adelante (en la página 208), el título de la sección que describe la palabra clave DIM (nota: no figura en el contenido) dice:
Dimensión DIM de un array
Entonces, no obtuve la cita “Dim significa …” pero supongo que está claro que cualquier ser humano decente que pueda leer esos documentos considerará eso Dim
significa dimensión.
Con renovada esperanza, decidí investigar cómo Dim
fue elegido. Nuevamente, no encontré una cuenta sobre el tema, pero pude encontrar una cita definitiva:
Antes de poder usar un arraydebe definirlo en una instrucción DIM (dimensión).
Puede encontrar esto como parte de las guías del usuario en línea de True BASIC en la página web de True BASIC inc, una empresa fundada por Thomas Eugene Kurtz, coautor de BASIC.
Entonces, en realidad, Dim
es una abreviatura de DIMENSION
, y si. Eso existía en FORTRAN antes, por lo que es probable que haya sido elegido por la influencia de FORTRAN, como dijo Patrick McDonald en su respuesta.
Dim sum as string = "this is not a chinese meal" REM example usage in VB.NET ;)
Es la abreviatura de Dimension, ya que se usó originalmente en BASIC para especificar el tamaño de las matrices.
DIM: (abreviatura de dimensión) define el tamaño de las matrices
Referencia: http://en.wikipedia.org/wiki/Dartmouth_BASIC
Una parte del código fuente del compilador BASIC original, donde saltaría al encontrar un DIM
comando, en el que se puede ver claramente la intención original de la palabra clave:
DIM LDA XR01 BACK OFF OBJECT POINTER
SUB N3
STA RX01
LDA L 2 GET VARIABLE TO BE DIMENSIONED
STA 3
LDA S 3
CAB N36 CHECK FOR $ ARRAY
BRU *+7 NOT $
...
Referencia: http://dtss.dartmouth.edu/scans/BASIC/BASIC%20Compiler.pdf
Posteriormente pasó a ser utilizado para declarar todo tipo de variables, cuando se agregó la posibilidad de especificar el tipo de variables en implementaciones más recientes.
Si te gusta la programación, tienes la opción de dejar una sección acerca de qué le añadirías a este post.