Está en la página 1de 3

GonzlezAnguloAriadnaItzel

ALGOL 68
HISTORIA.
ALGOL 68 es un derivado directo de ALGOL 60, el cual se dise bsicamente para la
enseanza de la programacin, e incorpora nuevos conceptos. Uno es la generalizacin y uso de
bloques: el ltimo valor calculado en un bloque se asigna como valor del bloque, por lo que se amplia
el concepto de expresin; estas ideas fueron posteriormente aprovechadas para el diseo de otros
lenguajes imperativos, como C .
El lenguaje Algol, ALGOrithmic Language, fue creado para aplicaciones cientficas en 1958. Su
principal aportacin fue la de ser el primer lenguaje cuya sintaxis se expresaba mediante una gramtica
formal, conocida como Backus-Naur Form o BNF; tambin implement nuevos conceptos como las
llamadas recursivas de las funciones. Se puede considerar el padre de lenguajes como Pascal, C y C++.
Su sucesor, el ALGOL 68, demasiado farragoso, no pudo competir con Pascal, mucho ms
compacto.
La definicin del lenguaje fue presentada en la reunin del comit ALGOL de la IFIP en 1965.
Luego de varios aos de revisin del diseo se lleg a una versin definitiva en 1968. En la tercera
revisin de ALGOL. Van Wijngaarden (E.U) propona ampliar ALGOL, crear un "ALGOL
Generalizado". Se basaba en la idea de que la complejidad de los lenguajes era la causa de sus
limitaciones.
La premisa de que un lenguaje no debera estar enterrado entre reglas sintcticas, sino apoyado
por ellas, condujo a un lenguaje en el que un fallo en la lgica de un programa era prcticamente
indetectable. Por otra parte, Niklaus Wirth prefera simplificar el lenguaje para que resultase ms
operativo. Wirth consideraba un error considerar una caracterstica esencial de un lenguaje de alto nivel
la capacidad de expresar un programa de la forma ms breve posible.
ALGOL 68 se ha utilizado muy poco, en parte debido a que su informe original utilizaba una
terminologa nueva y era difcil de leer. Por ejemplo, llama modos (modes) a los tipos de datos y
unidades (units) a las expresiones. No obstante, ALGOL 68 fue decisivo para la aparicin de Pascal.
El lenguaje incorpora un conjunto relativamente pequeo de conceptos ortogonales. Se
minimizan las restricciones acerca del uso combinado de sus distintas caractersticas.
ALGOL 68 utiliz la notacin VWF (Van Wijngaarden Form) para definir su sintaxis e ingls
semi-formal para especificar su semntica. La notacin utilizada es ms completa y adecuada para la
definicin de un lenguaje de programacin que la BNF. Usa una forma de gramtica, llamada una
gramtica de dos niveles, que puede describir muchas de las restricciones contextuales sobre el
lenguaje que no pueden describirse con una gramtica BNF. Sin embargo, la experiencia con las formas
de gramtica ms poderas ha sido generalmente decepcionante, debido a su complejidad incrementada.
Intent ser una versin mejorada de ALGOL 60, pero sin incorporar muchas caractersticas
nuevas provenientes de fuentes diferentes, y ms bien, creando una estructura ms expresiva y en teora
completamente consistente. Inclua un sistema de tipo general y adopt una orientacin a la expresin
sin restricciones arbitrarias, un lenguaje conocido como completamente ortogonal. Adems, con la
intencin de conseguir ms precisin, el comit de ALGOL 68 desarroll una nueva terminologa con
definiciones precisas para describir el lenguaje. De ah que el manual de consulta del lenguaje se
hiciera prcticamente ilegible para el cientfico o programador de las computadoras promedio. A pesar
de que este lenguaje sigue siendo un ejemplo extremadamente interesante por su consistencia en el

diseo, sistema de tipos y ambiente de ejecucin, fue utilizado pocas veces, a menudo difamado y no
fcilmente disponible en computadoras populares.|
CARACTERSTICAS
Incorpora mecanismos para tipos definidos por el usuario.
Declaracin separada de datos y operaciones .
Utiliz la notacin VWF (Van Wijngaarden Form) para definir su sintaxis e ingls semi-formal
para especificar su semntica.
Usa una forma de gramtica, llamada una gramtica de dos niveles.
Inclua un sistema de tipo general y adopt una orientacin a la expresin sin restricciones
arbitrarias, un lenguaje conocido como completamente ortogonal.
Llama modos (modes) a los tipos de datos yunidades (units) a las expresiones.
Se desarroll una nueva terminologa con definiciones precisas para describir el lenguaje.
VENTAJAS

Permite comunicar algoritmos.

Permite una eficiente ejecucin de algoritmos en diferentes arquitecturas


Sirve como herramienta para la enseanza.
Programacin estructurada
DESVENTAJAS

Los implementadores tuvieron dificultad en desarrollar compiladores para el ALGOL 68.

Algol 68 incorpora mecanismos para tipos definidos por el usuario.


Declaracin separada de datos y operaciones .
No permite encapsulamiento
APLICACIONES
Fue intencionalmente un lenguaje de propsito general con aplicaciones en un amplio rango de
inters. El Report on the Algorithmic Languge ALGOL 68 fue un documento largo y complejo, que
describa un lenguaje enorme. Los implementadores tuvieron dificultad en desarrollar compiladores
para el ALGOL 68 y hubo discrepancia entre los miembros del grupo de trabajo sobre la posibilidad de
que este nuevo lenguaje fuera demasiado ambicioso para ser prctico.
La ortogonalidad fue una meta principal del diseo de ALGOL 68 y se mantiene como el mejor
ejemplo de un lenguaje donde los constructores pueden combinarse en todas las formas significativas.
Los objetivos principales de ALGOL 68 son el permitir comunicar algoritmos, el permitir una
eficiente ejecucin de los mismos en diferentes arquitecturas y el de servir como herramienta para la

enseanza.
Una caracterstica interesante de ALGOL 68 es que su semntica fue definida formalmente antes
de ser implementado en base al formalismo llamado gramticas de dos niveles.

REFERENCIAS

TUCKER Allen B., Lenguajes de Programacin 2da Ed., Mc Graw-Hill, Mxico 1988.
LOUDEN Kenneth C., Lenguajes de Programacin 2da Ed., Thomson, Mxico 2004.
PRATT Terrence W., Lenguajes de Programacin, diseo e Implementacin. 2Da Ed.,
Premtice-Hall, Mxico 1987.
www.itescam.edu.mx/principal/sylabus/fpdb/recursos/r51757.pdf
ocwbeta.uji.es/material/5152/raw
http://www.territorioscuola.com/wikipedia/es.wikipedia.php?title=ALGOL
fcasua.contad.unam.mx/apuntes/interiores/docs/98/4/informatica_4.pdf