Historia y evolución de los lenguajes de programación.
|
||
|
ALGOL 58 y 60 |
|
Unos años después de aparecer el FORTRAN apareció el lenguaje ALGOL 58 (Algorithm Language), que fue diseñado para ser independiente del Computadora con una gramática bien definida. Un comité de expertos europeos y americanos lo definieron en sólo tres días en Zurich. Alemania, su nombre original era IAL (International Algebraic Language). ALGOL 58 incorporó ciclos, hasta entonces los programas eran de estructura plana, secuencial, como los realizados en ensamblador. La publicación del informe preliminar de ALGOL 58 en “Communications of the ACM” despertó mucho interés en el lenguaje ALGOL. Tras varias reuniones, tanto en Europa como en EEUU, se llegaría a ALGOL 60. Se define en una reunión en París, posterior al Congreso de la I.F.I.P. (Int'l Federation of Information Processing) en París, del 11 al 16 de enero de 1960. Para esta reunión se seleccionaron a siete representantes europeos y a otros siete americanos, aunque uno de ellos (William Turanski) murió antes de que la reunión llegase a celebrarse. ALGOL 60 es un lenguaje implementable que se convirtió en un estándar para la descripción de algoritmos: utilizado principalmente sobre papel (mundo académico y de investigación). Se utilizó bastante en Europa. ALGOL 60 inició varias tradiciones, incluyendo el uso de la notación BNF, propuesta por John Backus, para especificar la sintaxis y el empleo adicional de BNF para organizar el manual de referencia del lenguaje. Después se descubrió que Panini había usado una notación similar a la BNF entre el 400 y el 200 a.C. para describir las complejas reglas de la gramática del sánscrito. La semántica del lenguaje seguía describiéndose en lenguaje natural. ALGOL 60 introdujo la recursión: "Cualquier aparición de un identificador de procedimiento dentro del cuerpo del procedimiento, excepto una aparición en la parte izquierda de un enunciado de asignación, denota la activación del procedimiento" . ALGOL 60 también introdujo la declaración explícita del tipo de las variables, las reglas de ámbito para variables locales, el paso de parámetros por referencia, la estructura de bloque y las matrices de tamaño dinámico. ALGOL 60 incluye estructuras de control condicionales del tipo if-then-else y ciclos for. Aunque proporciona constructores de flujo de control estructurados, mantiene (al igual que casi todos sus derivados) el enunciado goto, cuya naturaleza dañina para la comprensión y modificación de programas es clara. ALGOL 60 también tenía algunas características que no siempre se han recogido en lenguajes posteriores, como las declaraciones own (similares a las variables static de C) o las expresiones switch (muy diferentes a las estructuras de control switch de C).
|
© 2002, Aletse Producciones, S.L. Reservados todos los derechos