|
|---|
Breve historia de BASIC
Pido disculpas antes de iniciar este pequeño resumen por incluir opiniones subjetivas quizás
en exceso, pero creo más enriquecedora la visión de quien ha vivido gran parte de lo que escribe,
incorporando sus propias experiencias, que una narración fría y académica.
Allá por el comienzo de los años 70, en los ordenadores de la época, corrían principalmente
los programas generados con Cobol (como lenguaje de propósito general) y Fortran, orientado más hacia
la problemática de los cálculos aritméticos. Los programadores eran los gurús inalcanzables
de la época y el funcionamiento y/o aprendizaje de sus artes, no aptas para profanos.
En este contexto el Darmouth College, y concretamente John Kemny y Thomas Kurtz crearon un lenguaje y un intérprete
(por supuesto era lenguaje interpretado) dedicado a facilitar la labor de los futuros programadores, y nace BASIC
(Begineer's all-purpose simbolic instructioncode), "codificación de instrucciones simbólicas
con carácter generar para aprendizaje". Teniendo en cuenta que Fortran era el lenguaje dominante, quien
haya trabajado en ambos, se habrá percatado del parecido. No obstante, para el ambiente de la época,
no era ni siquiera merecedor de ser tenido en cuenta.
Bajo mi humilde opinión, no fue considerado hasta la llegada de los CP/M que comenzó una progresión
ascendente. Y es cierto lo que se decía de él, es idóneo para la programación caótica,
no contiene estructuras rígidas como ocurría con Cobol, y el GOSUB (llamada a subrutina) y mucho
más el GOTO (salto condicional) podían conseguir de él un perfecto programa absolutamente
ilegible. A mi entender los críticos procedentes de Cobol, parecían dejar en el olvido su comando
PERFORM, muy similar al GOSUB de Basic. El problema real era el GOTO indiscriminado, la falta de una estructura
de datos, inexistencia en declaración de variables de cualquier tipo y un manejo atípico de matrices.
Evidentemente era lo menos parecido a un lenguaje estructurado, pero, por otra parte, ninguno entonces lo era.
Y no obstante, sí había una diferencia entre variables, no era en nada parecido utilizar V$ que V%,
puesto que en la primera estamos diciendo que se trata de un string (cadena de caracteres) y en la segunda de un
entero (numérico sin decimales). Lo que ocurre es que no estaba en manos del programador su inicialización,
ni su declaración en cuanto al ámbito (globales, públicas y privadas), era el propio intérprete
el encargado de manejarlas. Cierto que podía darse el caso, de hecho era lo habitual, que las variables
se creasen como globales a la aplicación con independencia del sitio en que estuviesen alojadas, lo que
bajo cualquier prisma es casi increíble, pero no hay que olvidar la evolución en los intérpretes
y las modificaciones que se fueron realizando con el tiempo. Con todo, lo que ha sido vigente durante muchos años
y ahora, en la actualidad, los fabricantes están dispuestos a coartar, que es el alcance a bajo nivel, estaba
integrado a base de las sentencias PEEK para lectura de áreas de memoria, y POKE para escritura en ellas.
Lo que, unido a otras posibilidades de tratamiento de puertos, no eran opciones nada desechables.
En cualquier caso, tienen muy poco en común un Basic 80, de un Basic E (para multiproceso), del creado por
Apple para sus Mac. Y la norma que ANSI estableció para el lenguaje, entiendo, de nuevo bajo una visión
muy subjetiva, que no sirvió mas que para crear unas líneas maestras básicas, de tal forma
que el parecido entre los mencionados, o el GW Basic en los micros, o los traductores que cada fabricante de hardware
introdujo, no tienen mas que un parecido que en nada conforman una unidad. Creo preferible pensar en lenguajes
similares que en un único lenguaje con distintas características. No se parece en nada el Basic de
los mini ordenadores HP 250 y 260, muy potentes para cuando estaban en funcionamiento, sobre la mitad de los años
80, con un traductor rápido y capacidad para manejar una base de datos jerárquica, o el Basic de
Data General, mas o menos de la misma época, con lo que nos han hecho creer que era el lenguaje por aquellos
tiempos. Con todas sus pegas, su sistema caótico que depende tanto de la herramienta como del programador,
se generaron verdaderos útiles para programas de gestión seria.
Y por supuesto, ya no entro, porque no se trata aquí de ello, en los nuevos Basic. Desde sus inicios ha
tenido detrás a Microsoft y en estos últimos años evidentemente es quien marca la diferencia.
José Luis Freire
El Rinconcito Informático: 25/06/2000 - (c) 2000 - 2008 | Creación y mantenimiento : José Luis Freire | Se pretende poder utilizar cualquier navegador. Recomendado 1024x768 |