Saltar ao contido

Algol

Na Galipedia, a Wikipedia en galego.

Algol (acrónimo inglés de Algorithmic Language, "linguaxe algorítmica") é unha linguaxe de programación. Foi moi popular nas universidades durante os anos 1960, pero non chegou a ter éxito coma linguaxe de uso comercial.

Porén, Algol influíu profundamente en varias linguaxes posteriores que si acadaron gran difusión, coma Pascal, C e Ada.

Deica 1965 dúas correntes distinguíronse sobre o tema dunha sucesora para a Algol. Como resultado, definíronse as linguaxes Algol W que é unha linguaxe minimalista, rapidamente implementada e distribuída e, por outra parte, Algol 68 que para a época está na fronteira entre unha linguaxe para programar nela e unha linguaxe para investigar sobre ela.

Exemplo de programa en Algol

[editar | editar a fonte]
procedure Absmax(a) Dimensions:(n, m) Resultado:(y) Subíndices:(i, k);
value n, m; array a; integer n, m, i, k; real y;
comment Da matriz a tómase o elemento co valor absoluto maior e colocase en y.
Os subíndices do elemento colócanse en i e 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

Linguaxe elaborada deseñada por Niklaus Wirth e Tony Hoare a partir dos traballos do grupo ALGOL da IFIP. Trátase dunha linguaxe concisa, simple de implementar, que evita tódolos defectos coñecidos da linguaxe Algol e inclúe as súas propias características adicionais. Con todo, o grupo Algol non a adoptou como sucesora do Algol preferindo no seu lugar á que terminou sendo Algol 68. Algol W foi empregada por gran cantidade de usuarios e sementou o camiño para o nacemento da linguaxe Pascal.

Entre as características desta linguaxe destácanse: Aritmética de dobre precisión, números complexos, cadeas de caracteres e estruturas de datos dinámicas, avaliación por valor, paso de parámetros por valor, valor resultado ou resultado.

A definición desta linguaxe foi presentada na reunión do comité ALGOL da IFIP en 1965. Tras varios anos de revisión do deseño chegouse a unha versión definitiva en 1968. O principal autor é Adriaan Van Wijngarden.

Os obxectivos principais da ALGOL 68 son a comunicación de algoritmos, a eficiente execución dos mesmos en diferentes arquitecturas e o servizo como ferramenta para a ensinanza.

Unha característica interesante da ALGOL 68 é que a súa semántica foi definida formalmente antes de ser implementada en base ao formalismo chamado gramáticas de dous niveis.