0% encontró este documento útil (0 votos)
215 vistas2 páginas

Lenguaje de Programación ALGOL y Su Evolución

ALGOL fue un popular lenguaje de programación académico en los años 1960 que influyó en lenguajes posteriores como Pascal, C y Ada. Aunque no tuvo éxito comercial, llevó al desarrollo de lenguajes como Algol W y Algol 68, siendo este último el primer lenguaje en tener una semántica formalmente definida.

Cargado por

Anonymous EVhGva
Derechos de autor
© © All Rights Reserved
Nos tomamos en serio los derechos de los contenidos. Si sospechas que se trata de tu contenido, reclámalo aquí.
Formatos disponibles
Descarga como TXT, PDF, TXT o lee en línea desde Scribd
0% encontró este documento útil (0 votos)
215 vistas2 páginas

Lenguaje de Programación ALGOL y Su Evolución

ALGOL fue un popular lenguaje de programación académico en los años 1960 que influyó en lenguajes posteriores como Pascal, C y Ada. Aunque no tuvo éxito comercial, llevó al desarrollo de lenguajes como Algol W y Algol 68, siendo este último el primer lenguaje en tener una semántica formalmente definida.

Cargado por

Anonymous EVhGva
Derechos de autor
© © All Rights Reserved
Nos tomamos en serio los derechos de los contenidos. Si sospechas que se trata de tu contenido, reclámalo aquí.
Formatos disponibles
Descarga como TXT, PDF, TXT o lee en línea desde Scribd

ALGOL

Se denomina ALGOL (o Algol) a un lenguaje de programación. La voz es un acrónimo de


las palabras inglesas Algorithmic Language (lenguaje algorítmico).

Fue muy popular en las universidades durante los años 1960, pero no llegó a cuajar
como lenguaje de utilización comercial.

Sin embargo, Algol influyó profundamente en varios lenguajes posteriores que sí


alcanzaron gran difusión, como Pascal, C y Ada.

Hacia 1965 dos corrientes se distinguieron sobre el tema de un sucesor para Algol.
Como resultado se definieron los lenguajes Algol W que es un lenguaje minimalista,
rápidamente implementado y distribuido y, por otra parte, Algol 68 que para la
época está en la frontera entre un lenguaje para programar en él y un lenguaje para
investigar sobre él
Ejemplo de programa en ALGOL 60

procedure Absmax(a) Dimensiones:(n, m) Resultado:(y) Subíndices:(i, k);

value n, m; array a; integer n, m, i, k; real y;

comment De la matriz a se toma el elemento con el valor absoluto mayor y se


coloca en y.

Los subíndices del elemento se colocan en i y k;

begin integer p, q;

y:= 0; i:= k:= 1;


for p:= 1 step 1 until n do
for q:= 1 step 1 until m do

if abs(a[p, q]) > y then

begin y:= abs(a[p, q]);

i:= p; k:= q

end

end Absmax

Algol W

Lenguaje elaborado diseñado por Niklaus Wirth y Tony Hoare a partir de los trabajos
del grupo ALGOL de la IFIP. Se trata de un lenguaje conciso, simple de implementar,
que evita todos los defectos conocidos del lenguaje Algol e incluye sus propias
características adicionales. Sin embargo, el grupo Algol no lo adoptó como sucesor
de Algol prefiriendo en su lugar al que terminó siendo Algol 68. Algol W fue
utilizado por gran cantidad de usuarios y sembró el camino para el nacimiento del
lenguaje Pascal.

Entre las características del lenguaje se destacan: Aritmética de doble precisión,


números complejos, Strings y estructuras de datos dinámicas, evaluación por valor,
pasaje de parámetros por valor, valor resultado o resultado.
Algol 68

La definición del lenguaje fue presentada en la reunión del comité ALGOL de la IFIP
en 1965. Luego de varios años de revisión del diseño se llegó a una versión
definitiva en 1968. El principal autor es Adriaan van Wijngaarden.

Los objetivos principales de ALGOL 68 son permitir comunicar algoritmos, permitir


una eficiente ejecución de los mismos en diferentes arquitecturas y servir como
herramienta para la enseñanza.

Una característica interesante de ALGOL 68 es que su semántica fue definida


formalmente antes de ser implementado en base al formalismo llamado gramáticas de
dos niveles.
Ejemplo de programa en Algol 68

proc absmax=(ref[]real a)real:


begin
int i, k; real y:=0;
comment De la matriz a se toma el elemento con el valor absoluto mayor y se
coloca en y. x
Los subíndices del elemento se colocan en i y k;peme comment
i:= k:= 1⌊a;
for p from 1⌊a by 1 to 1⌈a do
for q from 2⌊a by 1 to 2⌈a do
if abs a[p, q] > y then
y:= abs a[p, q];
i:= p; k:= q
fi
od
od;
y
end

Algol68 Edición de libros

int sum sq:=0;


for i
while
sum sq≤1000
do
sum sq+:=i↑2
od

Código por el compilador de 7-bit/ascii

INT sum sq:=0;


FOR i
WHILE
sum sq<=1000
DO
sum sq+:=i**2
OD

Código por el compilador de 6-bits/byte

.INT SUM SQ:=0;


.FOR I
.WHILE
SUM [Link] 1000
.DO
SUM [Link] [Link] 2
.OD

También podría gustarte