|
Viejos Tiempos
Copyright © 2001 H.R
Quiroga
Un repaso de los viejos tiempos
Se dice que toda revolución tecnológica requiere 30 años para convertirse
a una forma definitiva y cotidiana de la vida humana. Esto ha sido
así con la televisión y el teléfono. La computación en algunos de sus
aspectos (como revolución) parece estar llegando a sus treinta años por
lo cual podemos asumir que ya está tomando su forma definitiva.
Desde finales de los ochenta, en computación de escritorio, no se ha
presentado un producto verdaderamente nuevo (original) que sea importante
fuera de su entorno operativo, el último fue Access, Microsoft se
lo compró a una empresa Francesa según recuerdo, y si somos rigurosos es
una evolución algo más visual de los sistemas de base de datos (xBase,
por ejemplo). Tenemos unos 10 años viendo como los programas existentes
sólo cambian de versión. Incluso nuevos fabricantes sólo hacen nuevas
versiones de programas ya existentes. Piense en esto un poco, Star
Office y MS-Office vienen de WordStar, Visicalc (o Multiplan) en los 80.
Los lenguajes de programación no son nuevos, solo evoluciones de Basic,
Pascal y C. De resto los visualizadores de Internet son tan nuevos como
el www (lo cual no es realmente muy nuevo). Revisando mi computadora no
encontré software realmente original que no fuese dependiente del
sistema operativo (FindOrphan, StartupCop por ejemplo).
Lo anterior viene a colación porque creo que Delphi está llegando a su
forma definitiva como evolución de Pascal. No está de más mirar un poco
al pasado. No pretendo recontar lo que muchos ya sabemos, sólo quiero
hacer unos comentarios curiosos de la historia. En adelante refiero a
Delphi como evolución de Pascal.
Un momento histórico crucial. Mediados de los 80.
Lotus 1-2-3, CP/M, PC-AT y el lenguaje más común (al nivel de) micros:
Basic.
En algún lugar del mundo, un noche fría, un miserable programador
arrodillado terminó un rezo así "... y líbranos de Basic, amén."
Entonces apareció Turbo Pascal. Eso es el tipo de cosas que me hace
dudar de la inexistencia de Dios.
Delphi surge como evolución de Pascal y Pascal es prototipo (como Ada,
APL y otros) de lo que ha sido llamado lenguaje B&D
("bondage-and-discipline"). La imagen de una mujer inglesa vestida de negro
con un látigo, cadenas dispuesta a no dar posibilidad de salirse de ciertas
normativas ('right programming') es de muy claro entender para los que
pasamos por "Basic" en los ochenta. Turbo Pascal es responsable del
primer intento valido por quitarnos dos etiquetas respecto a Pascal:
Lenguaje B&D y la de "toy language".
Lenguaje de juguete
Como lenguajes de juguete se han entendido a los lenguajes de carácter
instruccional diseñados como prueba de alguna teoría de ciencia de la
computación. Pascal, como Niklaus Wirth lo definió en 1967, era así. De
hecho por mucho tiempo muchas personas han pensado que llevar a Pascal a
un lenguaje para programación de propósito general es una mala idea.
Entre ellos Brian Kernighan.
En el año 1981 Brian Kernighan escribió un "paper" titulado "Why Pascal
is Not My Favorite Programming Language". Según entiendo pueden buscarlo
en "Comparing and Assessing Programming Languages" de Alan Feuer y
Narain Gehani (Prentice-Hall, 1984). Allí manifiesta algunas cosas
interesantes. Tuvo razón en al menos una: las extensiones del lenguaje
acaban con la portabilidad. El hecho es que, volviendo a la actualidad,
de no ser por la limitada portabilidad hacía Kylix, Delphi no es
portable (aún). De todas formas uno de los problemas que él veía eran
los de los tipos "string" (una extensión que no es parte de Pascal
estándar), variables estáticas y globales y en fin males que la OOP ha
tratado de eliminar con bastante éxito.
Yo nunca programé en Pascal estándar, mi primer Pascal fue Turbo Pascal
2.xx en CP/M que quizás era de juguete como consideró Kernighan, pero
daba para todo lo que era capaz CP/M (¿Será que CP/M era un juguete?).
Hoy en día muchos programadores de Delphi provienen de C y Basic en sus
versiones más evolucionadas (Visual C++, Visual Basic) y no creo que
piensen en Delphi como algo inadecuado para la programación de propósito
general. Claro Delphi es más que un superconjunto de Pascal.
Copyright © 2001 por H.R Quiroga. Todos los derechos reservados.
Se permite la publicación de este material por cualquier medio por parte
de cualquiera siempre que este no sea modificado en contenido y se cite
la fuente original.
Segunda parte
Próximamete publicaremos la segunda parte de este artículo.
|