BASIC fue inventado por John G. Kemeny y Thomas E. Kurtz, del Colegio Dartmouth en Hanover, New Hapshire, Estados Unidos. BASIC fue usado exitosamente para correr programas en la computadora principal de la escuela (una computadora General Electric), hace 50 años, un primero de mayo, pero de 1964.
Los dos profesores de matemáticas creían profundamente en la necesidad de que hubiese cierta cultura de computación pues ésta sería esencial en los años por venir y no se equivocaron. Diseñaron su lenguaje bajo el precepto fundamental de que fuese simple de usar y le denominaron BASIC, el cual es un acrónimo de “Beginner’s All-Purpose Symbolic Instruction Code”. Primero se usó en la propia escuela de los matemáticos, Darthmouth, para después pasar a otras instituciones académicas.
En los años setenta y principios de los ochenta del siglo pasado, empezaron a salir las computadoras caseras y BASIC quizás fue el detonante para hacerlas útiles. Especialmente a partir de una versión del lenguaje que cobró fuerza y que de alguna manera se convirtió en el estándar, Microsoft BASIC, creado por unas pequeña empresa en esos años. “BASIC no fue diseñado para cambiar al mundo”, dice Kurtz, “simplemente pensábamos solamente en Darthmouth”, comenta. Kurtz es el sobreviviente de la pareja de creadores del lenguaje (Kemeny murió en 1992). “Necesitábamos un lenguaje que pudiese ser enseñado a virtualmente todos los estudiantes (y profesores) sin que tuviesen que tomar un curso”.
Con los años BASIC se convirtió en el lenguaje principal de facto de las computadoras personales, las cuales tenían 64KBytes (sí, leyeron bien, 64 KBytes de RAM) y se habían hallado incluso mecanismos para hacerlo relativamente eficiente en esas maquinitas. No obstante, ya había otros lenguajes que sin duda eran mejores, pero que requerían de más recursos y que tuvieron que esperar a que las computadoras mejoraran, tanto en hardware como en los lenguajes que se podían usar. De hecho, con los años, BASIC fue sujeto de muchas críticas porque promovía malos hábitos de programación. Incluso hubo artículos muy famosos sobre el uso del GOTO como el de Dijkstra, quien indicó en el título de su mini-artículo, que “El GOTO debía considerarse dañino para la programación”.
Más aún, el propio Dijkstra indicó alguna vez (1975) que “era imposible enseñar buena programación a los estudiantes que tenían una exposición previa al BASIC” y quizás exageró cuando indicó que “como programadores potenciales están mutilados mentalmente más allá de toda posibilidad de regeneración”. Pero no hay que extrañarse de Dijkstra en este sentido, pues dijo que FORTRAN era un “desorden infantil”, PL/1 una “enfermedad mortal” y COBOL una “ofensa criminal”.
BASIC eventualmente fue desapareciendo como el lenguaje más usado, pero no porque hubiese habido una conspiración contra el mismo. Lo que ocurrió es que otros lenguajes mostraron mayor expresividad y se fueron ubicando en el gusto de los programadores. Por su parte, Microsoft hizo un buen esfuerzo queriendo mantener a BASIC en el gusto de los programadores y sacó un ambiente RAD (Rapid Application Development), llamado Visual BASIC que, hasta donde sé, van en la versión 6 y se puede usar incluso dentro de Visual Studio. Visual BASIC es una versión mucho más moderna del BASIC de Kurtz y Kemeny. Aquí ya no existe el número de línea y tiene estructuras más poderosas que bien podría servir como un lenguaje para hacer algunas cosillas interesantes, aunque desde luego, los programadores llevan ya años orientados a herramientas y entornos de programación mucho más poderosos.
Kemeny y Kurtz
Cabe señalar que el BASIC original de Darthmouth era un compilador, es decir, generaba código de máquina que la computadora podía entender, en lugar de interpretar cada línea cuando el programa hallaba una instrucción, como se hace en un intérprete. Esto es muy interesante, porque escribir compiladores es una labor mucho más compleja que escribir intérpretes.
La primera versión de BASIC tenía los siguientes comandos:
- LET
- IF y THEN
- FOR y NEXT
- GOTO
- END
- INPUT
BASIC quizás quede finalmente en el olvido, pero es claro que muchos programadores iniciaron sus carreras utilizando alguna versión de este lenguaje que de alguna manera permitió sacar ventaja de la naciente computadora personal.
Referencias: