See also ebooksgratis.com: no banners, no cookies, totally FREE.

CLASSICISTRANIERI HOME PAGE - YOUTUBE CHANNEL
Privacy Policy Cookie Policy Terms and Conditions
ALGOL - Wikipedia

ALGOL

Na Galipedia, a wikipedia en galego.

Denomínase ALGOL (ou Algol) a un linguaxe de programación. A voz é un acrónimo das palabras inglesas Algorithmic Language (linguaxe algorítmico).

Foi moi popular nas universidades durante os anos 60, pero non chegou a calar como linguaxe de utilización comercial.

Con todo, Algol influíu profundamente en varias linguaxes posteriores que si alcanzaron gran difusión, como Pascal, C e Ada.

Cara a 1965 dúas correntes distinguíronse sobre o tema dun sucesor para Algol. Como resultado se definiron as linguaxes Algol W que é unha linguaxe minimalista, rapidamente implementado e distribuído e, por outra banda, Algol 68 que para a época está na fronteira entre unha linguaxe para programar nel e unha linguaxe para investigar sobre el.

Índice

[editar] Exemplo de programa en ALGOL 60

procedure Absmax(a) Dimensións:(n, m) Resultado:(e) Subíndices:(i, k);
value n, m; array a; integer n, m, i, k; real e;
comment Da matriz a tómase o elemento co valor absoluto maior e colócase en e.
Os subíndices do elemento colócanse en i e k;
begin integer p, q;
e:= 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]) > e then
begin e:= abs(a[p, q]);
i:= p; k:= q
end
end Absmax

[editar] Algol W

Linguaxe 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 todos os defectos coñecidos da linguaxe Algol e inclúe as súas propias características adicionais. Con todo, o grupo Algol non o adoptou como sucesor de Algol preferindo no seu lugar ao que terminou sendo Algol 68. Algol W foi utilizado por gran cantidade de usuarios e sementou o camiño para o nacemento da linguaxe Pascal.

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

[editar] Algol 68

A definición da linguaxe foi presentada na reunion do comité ALGOL da IFIP en 1965. Logo de varios anos de revisión do deseño chegouse a unha versión definitiva en 1968. Ao principal autor é Adriaan van Wijngaarden.

Os obxectivos principais de ALGOL 68 son o permitir comunicar algoritmos, o permitir unha eficiente execución dos mesmos en diferentes arquitecturas e o de servir como ferramenta para o ensino.

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

[editar] Exemplo de programa en ALGOL 68

proc absmax=(ref[]real a)real:
begin  
  int i, k; real e:=0;
  comment Da matriz a tómase o elemento co valor absoluto maior e colócase en e. x
          Os subíndices do elemento colócanse en i e k; comment
  i:= k:= 1⌊a;    
  for p from  1⌊a <>ou by 1 to 1⌈a   <>ou do
    for q from 2⌊a <>ou by 1 to 2⌈a <>ou do
      if abs a[p, q] > e then          
         e:= abs a[p, q];
         i:= p; k:= q
      fi
    od
  od;
  e
end
Algol68 Edición de libros
int sum sq:=0;
for i
while
  sum sq≤1000
do
  sum sq+:=i↑2
od
Code polo 7-bit/ascii compiler
INT sum sq:=0;
FOR i
WHILE
  sum sq<=1000
DO
  sum sq+:=i**2
OD
Code polo 6-bits/byte compiler

.INT SUM SQ:=0; .FOR I .WHILE

  SUM SQ.LLE 1000

.DO

  SUM SQ.PLUSAB I.UP 2

.OD

[editar] Enlaces externos e bibliografía

  • A contribution to the development of ALGOL, Niklaus Wirth and C. A. R. Hoare, Comm ACM 9(6), 413-432 (1966), ISSN:0001-0782
  • The Emperor's Old Clothes - the ACM Turing Award lecture by Tony Hoare, 1980, Comm ACM 24(2), 75-83 (1981)
  • ALGOL W Implementation, H. Bauer et ao, TR CS98, Stanford Ou, 1968dá:ALGOL

hei:ALGOLgl:Algol


aa - ab - af - ak - als - am - an - ang - ar - arc - as - ast - av - ay - az - ba - bar - bat_smg - bcl - be - be_x_old - bg - bh - bi - bm - bn - bo - bpy - br - bs - bug - bxr - ca - cbk_zam - cdo - ce - ceb - ch - cho - chr - chy - co - cr - crh - cs - csb - cu - cv - cy - da - de - diq - dsb - dv - dz - ee - el - eml - en - eo - es - et - eu - ext - fa - ff - fi - fiu_vro - fj - fo - fr - frp - fur - fy - ga - gan - gd - gl - glk - gn - got - gu - gv - ha - hak - haw - he - hi - hif - ho - hr - hsb - ht - hu - hy - hz - ia - id - ie - ig - ii - ik - ilo - io - is - it - iu - ja - jbo - jv - ka - kaa - kab - kg - ki - kj - kk - kl - km - kn - ko - kr - ks - ksh - ku - kv - kw - ky - la - lad - lb - lbe - lg - li - lij - lmo - ln - lo - lt - lv - map_bms - mdf - mg - mh - mi - mk - ml - mn - mo - mr - mt - mus - my - myv - mzn - na - nah - nap - nds - nds_nl - ne - new - ng - nl - nn - no - nov - nrm - nv - ny - oc - om - or - os - pa - pag - pam - pap - pdc - pi - pih - pl - pms - ps - pt - qu - quality - rm - rmy - rn - ro - roa_rup - roa_tara - ru - rw - sa - sah - sc - scn - sco - sd - se - sg - sh - si - simple - sk - sl - sm - sn - so - sr - srn - ss - st - stq - su - sv - sw - szl - ta - te - tet - tg - th - ti - tk - tl - tlh - tn - to - tpi - tr - ts - tt - tum - tw - ty - udm - ug - uk - ur - uz - ve - vec - vi - vls - vo - wa - war - wo - wuu - xal - xh - yi - yo - za - zea - zh - zh_classical - zh_min_nan - zh_yue - zu -