Autor: |
Bruce
McKinney |
Fuente: |
Programación
Avanzada con Visual Basic 5.0 (Microsoft Press Segunda Edición) |
Los programadores
empiezan a contar desde 0. El resto del mundo empieza a contar desde 1.
Kemeny y Kurtz (creadores de Basic) cuentan la historia de cómo dirimieron
esta diferencia de opinión. Originalmente, la primer dimensión de un arreglo
en Basic era 1 porque así es como cuenta la gente normal y Basic estaba
diseñado para gente normal. Pero Basic también ´tenía que funcionar para
los matemáticos, que suelen pensar en los arreglos o matrices como que
empiezan en cero, así que Basic cambió para que el primer elemento fuera
el 0.
Eso tampoco
era ninguna panacea. El sentido común dice que en la instrucción Dim ai(10)
el arreglo contiene 10 elementos, pero de hecho contiene 11. Puede que
eso esté bien en C, donde el sentido común no es demasiado prioritario,
pero irrita a los programadores en Basic. Así que se añadió la instrucción
Option Base, que sirve para especificar si desea que los arreglos tengan
sentido (empiecen en 1) o sean matemáticamente correctos (empiecen en
0).
Por supuesto
que, como los programadores en Pascal saben desde hace tiempo, 1 y 0 no
son los únicos números por los que se puede empezar a contar. Kemeny y
Kurts lo descubrieron por fin y cambiaron Basic para que se pudieran especificar
los puntos inicial y final de los arreglos:
Dim ai(1 To 10) As Integer
Dim ad(0 To 49) As Double
Dim av(-10 To 10) As Variant
|
Kemeny y
Kurtz no añadieron esta modificación al Basic hasta 1979. No se incluyó
en el ANSI Basic hasta 1983 y Microsoft Basic lo tuvo varios años más
tarde.
|