| ALGOL 58 | |||
|---|---|---|---|
| Paradigme | Multi-paradigme: Prosedyrisk programmering, imperativ programmering, strukturert programmering | ||
| Designet og utviklet av | Friedrich Ludwig Bauer, Heinz Rutishauser, Klaus Samelson, John Backus, Charles Katz, Alan Perlis | ||
| Typetildeling | statisk, sterk | ||
| Påvirket av | |||
| Fortran, Plankalkül | |||
ALGOL 58, opprinnelig var betegnelsen IAL foreslått, er et programmeringsspråk i familien ALGOL. Det ble utviklet etter et initiativ i oktober 1955 og ble presentert 1958. Språket introduserte begrepet sammensatte utsagn, men begrenset dette til flytkontroll.
Et sammensatt utsagn er en gruppe av utsagn som syntaktisk blir behandlet som ett eneste utsagn, dette gjør programmteksten oversiktligere. I Algol 58 og mange senere programmeringsspråk ble dette gjort ved å samle utsagnene i parentesparet begin og end, forskjellige andre språk som for eksempel C bruker { og }.
begin
1. utsagn
2. utsagn
...
end |
Etterfølgeren Algol 60 utvidet dette konseptet ved å knytte identifikatorenes gyldighetsområder til blokker (blocks).
En spesiell versjon av Algol 58, JOVIAL, ble lansert 1960 og var spesielt utviklet for innebygde systemer. JOVIAL var i bruk til 2008 eller lenger.
Dette programmet regner ut gjennomsnittet av alle elementene i en array, det er skrevet i referanse-Algol. I en konkret implementasjon ville det ha et avvikende utseende. Se det samme eksempelet under Algol 60 til sammenlikning.
comment the main program (this is a comment);
begin
Main: array (Data[1:1000])
Read Int(N);
for i:=1 (1) N
begin Read Real(val);
if (val<0) Data[i]:= -val
if (val≥0) Data[i]:= val
end
for i:=1 (1) N
sum:=sum + Data[i]
avg:=sum/N;
Print Real(avg)
integer (N, i)
end Main