lunes, 28 de marzo de 2011

HISTORIA

El nombre es un homenaje a Blaise Pascal, creador de la "máquina aritmética" y gran matemático del siglo XVII. Y supongo que Niklaus Wirth, de la Escuela Politécnica de Zurich, creador del lenguaje Pascal, fue quien lo decidió, e impulsó su entrada en universidades y grandes empresas.

Es un lenguaje moderno, si se le compara con otros, pues se conocen sus inicios en el 1966, bajo la denominación de ALGOL W, pues partió para la creación del ALGOL 60, y su comienzo fue un ordenador de Control Data, con un procesador programado también en Pascal.

En 1971 se publicó oficialmente en el Acta Informática bajo el título "La programación en lenguaje Pascal", si traduzco correctamente "The programming language Pascal". Y cuatro años más tarde volvió a publicarse la mayor parte del código en el mismo Acta. Era la versión estándar y precisaba ordenadores potentes (teniendo en cuenta las fechas de las que hablamos), pero hubo rápidas ampliaciones o mejor dicho, derivaciones, concretamente la UCSD Pascal desarrollada por Kenneth Bowles que elimina parte del código original para que pueda ejecutarse en ordenadores más pequeños. La otra que surgió por aquellos años lo hizo de la mano de Apple, por supuesto con el interface gráfico que siempre ha caracterizado a sus ordenadores, y diseñada exclusivamente para ellos. No creo que ni siquiera se pensase entonces en entornos gráficos por los fabricantes de software de cualquier otra empresa.

Aquellos que manejen hoy en día Pascal, o que han seguido su rumbo, conocen perfectamente lo que es básico en el lenguaje. En todos estos años la sintaxis básica no ha cambiado. Lo que hoy conocemos como un "procedimiento" o bloque independiente de código, se llamaba de la misma forma cuando se creó. Veamos como es así:

 La estructura, que es la parte que más se ha modificado, porque es una necesidad dado que hoy Pascal es un lenguaje orientado a objetos, básicamente contiene los mismos bloques: uno de cabecera donde se declaran variables y constantes, tipos (mandatos "Type", no confundir con tipos de datos), procedimientos, funciones, y poco más. Y ha continuación de ello lo que es el programa o contenido del procedimiento en sí, que igual que hoy se divide entre el "Begin" y el "End."

 Los operadores, salvo error, son los mismos. Pero difiere en algo en cuanto a tipos de datos definidos por el lenguaje, ese apartado se ha ido enriqueciendo en las sucesivas modificaciones, aunque básicamente sean igualmente numéricos, booleanos y de caracteres, y además permite la creación de los que no vienen predefinidos.

 Así que acepta la definición de datos. El más llamativo es el "Real", ya que en origen solo contiene valores enteros. Y además otros que estamos utilizando ahora mismo:
1. Enumerados o tipo escalar que pueden definirse exactamente igual que hoy.
2. Los tipos estructurados, como son los "Registros" (tan arraigados y potentes en varios lenguajes además de Pascal, como en lenguaje C), así podemos escribir:


NombreDelRegistro = Record
Declaración de elementos del registro.

3. Conjuntos. De la misma forma utilizando la cláusula "Set of".
4. La capacidad de los punteros en el Pascal de sus primeros tiempos, se ha perdido dada la tendencia de los programadores de sistemas a ocultar herramientas de gran potencia.

 En cuanto a estructuras tiene las condicionales "If" y "Case" que son las que se manejan en estos momentos
 En iteraciones o bucles o estructuras repetitivas (la definición a gusto de cada cual) tiene las tres que usamos: "While", "For" y "Repeat".
 La recursividad se puede utilizar de forma habitual, es una posibilidad mas del lenguaje.
 El paso de parámetros a procedimientos y funciones es muy similar, aceptando el de "valor" y el de "referencia"
El manejo de ficheros, aún con muchas instrucciones iguales, incluso pienso que la mayoría, sí que varía, pero es muy lógico, los archivos se han modificado en unos casos, son nuevos en otros.

Y aunque la esencia del lenguaje sea la misma, como creo que se ha podido ver, otros aspectos ha sufrido fuertes modificaciones. Así aparece el Turbo Pascal, el Object Pascal (Pascal dirigido a objetos), el actual de fuentes abiertas o Free Pascal, y por último y entiendo que el más potente, el que toma como base el lenguaje y lo convierte en una RAD, que es Delphi, de la empresa Borland.



No hay comentarios:

Publicar un comentario