ALGOL
Frå Wikipedia – det frie oppslagsverket
ALGOL (fokorting for ALGOrithmic Language) er eit programmeringsspråk som starta utviklinga midt på 1950-talet, og er eit tidleg programmeringsspråk. Den første standarden vart ferdig i 1958. Seinare versjonar kom i 1960 og 1968. I dag er Algol først og framst av historisk interesse, men er viktig fordi svært mange konsept i dei programmeringsspråka som blir brukt i dag kjem frå Algol, og blir derfor rekna som viktigare enn Fortran og COBOL, som var dei mest populære språka på den tida.
[endre] Eigenskapar og historie
Algol vart utvikla av ein internasjonal komité frå slutten av 1950-åra og framover. Den første rapporten som spesifiserte Algol58 vart ferdig i 1958. Særleg versjonen frå 1960 var nyskapande. Algol60 introduserte blokkstuktur, som finst i nesten alle programeringsspråk introduserte sidan, og som gjer lokale variablar mogeleg. I tillegg vart parameteroverføringsmodi som call by value og call by name, slik at ein kan lage rekursive funksjonar. if-then-else og generelle mekanismar for itterasjon var og nytt i Algol60.
Ei anna nyvinning er at syntaksen til algol er formelt definert i form av ein gramatikk. Denne var i såkalla Bachus-Neur-form (BNF), og dette er i dag den vanlegaste måten å spesifisere eit programmeringsspråk.
Andre eigenskapar som var nye i Algol:
- Dynamiske arrayar: Arrayar som ikkje måtte spesifiserast når programmet
vart laga, men kunne allokerast dynamisk under køyring.
- Nøkkelord: Nøkkelorda i språket kan ikkje brukast som variablar i Algol-program.
- Brukardefinerte datatypar: datatyper som speglar problemetområdet programmeraren forsøker skrive eit program for
[endre] Døme på programmering i Algol
Dette programmet reknar ut gjenomsnittet av alle elementa i ein array.
// the main program (this is a comment)
!
begin
integer N;
Read Int(N);
!
begin
real array Data[1:N];
real sum, avg;
integer i;
sum:=0;
!
for i:=1 step 1 until N do
begin real val;
Read Real(val);
Data[i]:=if val<0 then -val else val
end;
!
for i:=1 step 1 until N do
sum:=sum + Data[i];
avg:=sum/N;
Print Real(avg)
end
end
| Programmeringsspråk | |
|---|---|
|
ABC | Ada | AFL | Agora | ALGOL | APL | Assembler | awk | B | BASIC | BETA | BLISS | C | C++ | C# | Caml | Cobol | Concurrent C | CSP | D | Delphi | Erlang | Forth | Fortran | Haskell | HyperTalk | Icon| INTERCAL | Java | Lisp | Miranda | ML | Modula | NIAL | Objektorientert C | occam | OCaml | O'Haskell | Pascal | Perl | PHP | Pike | PL/I | Plankalkül | Prolog | Portal | R | Ruby | Scheme | Simula | Sina | Sisa | Smalltalk | SML | SNOBOL | Visual Basic |
|

