Arven efter datalogiens grand old man

Med Algol 60 skabte Peter Naur grundlaget for alle moderne programmeringssprog.

Flere danskere har sat afgørende præg på formuleringen af programmeringssprog. Kendt er ikke mindst Bjarne Strou¬strup for C++ og Anders Hejlsberg for Turbo Pascal og efterfølgeren Delphi, men andre er også blevet berømmet for deres evner udi denne kunst.

Det er mange år siden, at Bjarne Stroustrup og Anders Hejlsberg rejste ud i den store verden for at gøre karriere, og det vil være forkert udelukkende at pege på deres danske baggrund for deres bedrifter. Men en medvirkende årsag til deres succes skal findes i arven fra den allerstørste af dem alle, Peter Naur, der døde 3. januar 2016 efter kort tid sygdom, 87 år gammel.

Peter Naur var den ledende skikkelse i udviklingen af computersproget Algol 60 fra 1960.

Det til trods for, at han blot et år tidligere ved sin ansættelse hos Regnecentralen var blevet bekendt med et dokument fra 1958 om et nyt programmeringssprog (Algol 58 eller IAL).

Efter et møde i København holdt tre uger efter, Peter Naur var blevet ansat, blev han drivkraften i et internationalt samarbejde, der førte til Algol 60.

Algol 60 blev i 1973 af den britiske computerforsker Tony Hoare kaldt ‘et sprog, der var så langt forud for sin tid, at det ikke kun var en forbedring af sine forgængere, men også af næsten alle sine efterfølgere’.

Det var bl.a. for Algol 60, at Peter Naur i 2005 blev tildelt computervidenskabens fornemmeste pris, ACM Alan M. Turing Award.

Lektor Torben Mogensen fra Peter Naurs gamle institut, Datalogisk Institut ved Københavns Universitet, har i et blogindlæg tidligere på version2.dk beskrevet, hvordan Algol 60 har haft indflydelse på moderne programmeringssprog:

»Som konsekvens deraf kan programmer skrevet i Algol 60 i det store og hele forstås af moderne programmører uden yderligere forklaring,« forklarer Torben Mogensen.

Ikke mindst den særlige notation i sproget, der nu kendes som Backus-Naur-formen, og som var inspireret af Noam Chomskys studier af formelle sprog, er værd at fremhæve.

Det var også Peter Naur personligt, der tog den dengang kontroversielle beslutning at lade rekursion, hvor en funktion kalder sig selv, indgå i programmeringssproget.

Der går en direkte linje fra Algol 60 over Algol W og Pascal til Turbo Pascal, som Anders Hejlsberg formulerede i 1983. Også Bjarne Stroustrups C++ fra 1980 kan spores tilbage til Algol 60.

Fra astronomi til datalogi

Det var astronomien, der førte Peter Naur til datalogien.

Allerede i gymnasiet udviklede han interesse for astronomi og beregninger af baner for kometer og asteroider. Efter sin uddannelse på Københavns Universitet var han på ophold i både England og i USA og fortsatte siden ved observatoriet i Brorfelde.

Det var under et ophold i Cambridge i England i november 1950, han første gang stiftede bekendtskab med en elektronisk regnemaskine, Electronic Delay Storage Automatic Calculator (EDSAC).

I Peter Naurs egen beskrivelse udviklede dette flygtige bekendtskab nogle måneder senere til meget mere.

‘Jeg ville ikke blot være tilskuer, maskinen skulle sættes til at beregne perturbationer, som ellers er så tunge at komme igennem’, skrev han om sin tid i Cambridge.

Interessen for regnemaskiner var født. I Ingeniør- og Bygningsvæsen (som senere blev fusioneret med Ingeniørens Ugeblad til det nuværende Ingeniøren) skrev Peter Naur i 1955 en artikel om moderne cifferregnemaskiner, hvor han bl.a. pegede på muligheden for at bruge transistorer i stedet for elektronrør, og kom med denne spådom:

‘Fremtidens regnemaskiner vil være mindre af udstrækning, billigere i anskaffelse og drift, men næppe væsentligt hurtigere eller mere ydedygtige, end de nu eksisterende maskiner.’

Men det var jo også før, Jack Kilby fra Texas Instruments i 1958 fremstillede det første integrerede kredsløb, som ledte frem til den første mikroprocessor, Intel 4004, i 1971 med ikke mindre end 2.300 transistorer i samme chip.

Denne artikel har været bragt i avisudgaven af Ingeniøren fredag.

Kommentarer (4)

Troels Henriksen

Ikke mindst den særlige notation i sproget, der nu kendes som Backhus-Naur-formen, og som var inspireret af Noam Chomskys studier af formelle sprog, er værd at fremhæve.

BNF er ikke en del af Algol, men derimod en notation til at beskrive syntaks. Det særlige er at Algol var det første sprog der blev beskrevet sådan. Algol i sig selv har ikke ret mange features en moderne programmør ville have svært ved at forstå - måske lige noget med procedureparametre - hvilket er et af tegnene på at det var et rigtig godt design.

Mads Hjorth

En lidt sjov formulering, når man tænker på at det var Peter Naur der fandt på at kalde faget 'datalogi'.

Jeg husker ham bedst for en fantastisk fortælling om den menneskelig erkendelsesproces, som for ham, opførte sig som en mange-armet blæksprutte der strikkede et kludetæppe uden opskrift...

Tak for faget, Peter!

Christian Lynbech

Med Algol 60 skabte Peter Naur grundlaget for alle moderne programmeringssprog.

Omend Algol 60 kan ses som stamfader til en lang række moderne programmerings sprog, herunder nogen af de mest populære som C og Java, så er det dog noget af en overdrivelse at påstå det er alle moderne programmerings-sprog der nedstammer fra Algol.

Det er ikke for at tage noget fra Algols betydning, men (ihvertfald) både FORTRAN, LISP og COBOL kom før Algol.

Log ind eller opret en konto for at skrive kommentarer

JobfinderJob i it-branchen