Pioneren Peter Naur gjorde computersprogene mere menneskelige
Danske Peter Naur var en pioner inden for computervidenskab. Han blev verdenskendt for at udvikle og beskrive computersprog og fik en Turing-pris for sin indsats. Nu er han død i en alder af 87 år. Men hvem var det nu lige, han var? Læs med her, og bliv klogere på dansk datalogis fadder.

Peter Naur døde 3. januar 2016. Han var dansk datalogis fader og internationalt kendt for sit arbejde med at udvikle computerprogrammering og computersprog.
Foto: M. Schlosser, Københavns Universitet/DIKU

Kun én eneste gang i historien er en dansk forsker blevet vejet og fundet tung og unik nok til at få computervidenskabens svar på en nobelpris for sin videnskabelige indsats.

Det var i 2005, da professor Peter Naur modtog A. M. Turing-prisen i en alder af 77 år. Søndag 3. januar 2016 døde han 87 år gammel. Men han efterlader sig en solid og enestående arv, der lever videre inden for computervidenskaben.

»Hans indsats var banebrydende og har stadig stor betydning, når der laves computersprog og programmering i dag,« siger lektor og forsker Torben Ægidius Mogensen ved Datalogisk Institut på Københavns Universitet.

»En af hans store bedrifter var at skabe enkle, klare og præcise beskrivelser af computersprog, så de programmer, der skrives, generelt er lettere tilgængelige.«

Han beskrev computersprogets grammatik

Peter Naur var i slutningen af 1950’erne med til at udvikle og beskrive et af de tidlige programmeringssprog, som kaldes ALGOL60. Dette internationale sprog skulle kunne bruges på alle computere, så computersproget ikke længere var en fabrikskomponent integreret i en computers hardware. 

Det var især Peter Naurs præcise, strukturerede og enkle beskrivelse af dette computersprog, der var årsagen til, at han fik Turing-prisen. Men den var samtidig en generel belønning af en unik danskers enorme indsats.

Sammen med den amerikanske kollega John Backus beskrev han systematisk dette computersprog og dets syntaks – de grammatiske regler for det, så at sige -  på en måde, der nu kendes som Backus-Naur Formen.

Varianter af denne beskrivelse har sidenhen været brugt til at beskrive næsten alle programmeringssprogs syntaks. Mange lærebøger om teorien bag programmering beskriver også programmeringssprog i denne form.

Hans arbejde har generelt været med til at gøre computersprog og programmering systematisk og overskueligt. Det er også hans fortjeneste, at man i dag har effektive principper til matematisk at kunne føre bevis for et færdigt programs korrekthed.

»Det er stadig hans grundlæggende principper, der benyttes,« fastslår Torben Ægidius Mogensen.

En pioner inden for computervidenskab

Peter Naur står i dag som en af pionererne inden for computervidenskab. Han grundlagde forskningsfeltet i Danmark, blev den første professor på området herhjemme, vandt international anerkendelse og virkede gennem mere end et halvt århundrede. Han opfandt også selv ordet datalogi, som han mente var en mere dækkende betegnelse for både programmering og videnskaben omkring det, end computerscience eller computervidenskab.

Hans videnskabelige ideer og arbejder bruges stadig, når der uddannes nye dataloger.

»Dels anvendes nogle af hans videnskabelige artikler stadig, når der undervises i videnskabsteori i forhold til datalogi. Derudover er han indirekte til stede i nyere videnskabeligt arbejde inden for datalogien, fordi andre forskere i nogen grad bygger på hans ideer,« siger Torben Ægidius Mogensen.

Peter Naur var også en vigtig fortaler for, at computersprog skulle være forståelige for andre end lige dem, der lavede dem. For det er typisk andre, der skal bruge og videreudvikle programmer, end dem der skriver dem i første omgang, mente han. Og den tankegang er stadig vigtig.

Programmer til en af Danmarks første computere, GIER, blev tidligt i 1960'erne skrevet i ALGOL60, som Peter Naur (t.h.) var med til at udvikle, og oversat til computerens maskinsprog ved hjælp af et compiler-program, han også lavede.
Foto: Dansk Datahistorisk Forening via Københavns Universitet/DIKU

»Det er vigtigere end nogensinde med de store mængder programmer, der findes i dag, og som løbende skal udvikles, og her ser vi tydeligt Naurs arv,« siger Torben Ægidius Mogensen.

Dokumenteret i 200 videnskabelige udgivelser

»Han har været med til at gøre computersprog mere menneskelige og forståelige. Blandt andet gennem ideen om, at en given opgave først skal løses teoretisk i form af en detaljeret beskrivelse af, hvad det er for et problem, et program skal kunne løse. Det skal ske i et let forståeligt sprog. Dernæst skrives programmet. På den måde sikrer man, at andre kan arbejde struktureret videre på samme program ud fra den originale grundidé frem for kun at tage matematiske og programtekniske hensyn,« forklarer Torben Ægidius Mogensen og fortsætter:

»Det er desuden hans fortjeneste, at det er et element i datalogiuddannelserne, at de ikke kun skal gøre dataloger i stand til at skrive programmer og computersprog. De skal også have forståelse for de menneskelige og sociale aspekter, deres arbejde indgår i, hvilket er vigtigt, når andre skal bruge og videreudvikle programmerne til specifikke formål.«

Med datalogien fik han gjort kunsten at programmere og udvikle principper for computerprogrammering til en mere etableret videnskab, hvor datalogiske begreber og metoder kunne undersøges systematisk. 

Hans arbejde er dokumenteret i knap 200 videnskabelige udgivelser i form af artikler og bøger. I dag er blandt andet udgivelser som Concise Survey of Computer Methods og  Computing: A Human Activity grundlæggende værker inden for datalogien.

Interessen opstod tidligt

Karrieren begyndte ellers et helt andet sted.

Peter Naur voksede op i København og var som barn meget interesseret i astronomi. Han besøgte datidens forskere på området i sin fritid og lærte at beregne baner for kometer og planeter.

Som 15-årig skrev han sin første videnskabelige artikel om astronomi, og den blev senere udgivet. Og som 21-årig opnåede han en grad i astronomi ved Københavns Universitet efter at have klaret fem års studier på blot to år.

I de tidlige 1950’ere udførte han studier ved Cambridge i England og ved de amerikanske universiteter Harvard og Princeton. Men i Cambridge havde han stiftet bekendtskab med en af verdens første egentlige computer kaldet EDSAC, som var helt ny og i stand til både at lagre og udføre et program. Det vakte hans nysgerrighed.

Her brugte han meget tid på at programmere og løse ligninger inden for astronomien. Under sit besøg i USA mødtes han med blandt andre John von Neumann, en af pionérerne inden for computervidenskab og manden bag principperne i EDSAC-computeren. Her fik han lært endnu mere om programmering. Og så var han solgt.

Han besluttede sig for at forlade astronomien og fik job som programmør på Regnecentralen i 1959, mens han sideløbende underviste på Niels Bohr Instituttet og Danmarks Tekniske Universitet. Regnecentralen var oprindeligt en institution under Akademiet for de Tekniske Videnskaber, ATV, men blev senere en selvstændig IT-virksomhed. Her udviklede og programmerede man en af Danmarks første computere. Det var en maskine kaldet GIER, som der blev bygget omkring 50 eksemplarer af til blandt andet universiteter og private virksomheder herhjemme.

Gennem de næste 10 år udviklede Peter Naur en række nyskabende principper for programmering. Det var her, han var med til at udvikle computersproget ALGOL60 og beskrivelsen af det. Det skete i samarbejde med en række kolleger i Europa og USA, men Peter Naur var hoveddrivkraften.

Og så vendte han tilbage til den akademiske verden. I 1970 grundlagde han Datalogisk Institut ved Københavns Universitet, DIKU. Året inden blev han Danmarks første professor i datalogi ved universitetet og virkede her gennem 30 år indtil pensioneringen i 1998.

Computerfeltets danske fadder

Med Turing-prisen blev hans store indsats så belønnet i 2005. Denne internationale pris uddeles af det amerikanske videnskabelige selskab for computerteknologi og datalogi, Association for Computing Machinery (ACM).

Peter Naur var bl.a. med til at udvikle blokstruktur for programmering, hvor et program kan arbejde i understrukturer, som sættes i gang og afsluttes med begin/end-kommandoer, hvilket gør det mere overskueligt.
Foto: Københavns Universitet/DIKU, ALGOL60-rapporten

Prisen gives, ifølge ACM, for en 'individuel' indsats af 'vedvarende' og 'enestående' betydning inden for computer-området.

»Han har stået fadder til feltet computervidenskab i Danmark. Han satte meget høje standarder for præcision og entydighed i beskrivelser af programmeringssprog. Og så satte han, som den første professor inden for området og som grundlægger af datalogisk institut på Københavns Universitet, standarden for uddannelserne på området herhjemme. Og de står stadig,« siger Ole Lehrmann Madsen, der er direktør for Alexandra Instituttet A/S, uddannet datalog og tilknyttet Aarhus Universitet som professor på området.

Indførte to vigtige nøglebegreber

Derudover peger Ole Lehrmann Madsen på to nøglebegreber, som Peter Naur var med til at få indført i programmeringssproget ALGOL60, og som stadig i forskellig grad gør sig gældende i nyere computersprog, som Pascal, Java og C#.

Dels blokstrukturen, hvor et program kan sættes til at arbejde med et underområde, og som startes og sluttes med begin/end-kommandoer inden for det samlede program. Det giver en enkel og overskuelig opdeling, som svarer til at opdele en bog i afsnit og kapitler frem for at have en lang, ubrudt tekst.

Dels er der Naurs arbejde med at forenkle brugen af rekursion, som i dag er fundamentalt inden for datalogi. Det går ud på, at en procedure så at sige kan kalde sig selv og gentage en funktion flere gange, for eksempel ved at dele en talrække i to via en algoritme og derefter igen dele de to nye talrækker i to og gentage proceduren, indtil der kun er to tal tilbage.

Det er en ofte anvendt sortering i programmer, og Peter Naur gjorde den enklere at anvende i programmering med sine beskrivelser.
»Blokstruktur og rekursion er stadig væsentlige elementer i datalogien i dag,« siger Ole Lehrmann Madsen.

I 1960'erne blev tidlige computere på danske universiteter programmeret med ALGOL60 på GIER-computere ud fra Peter Naurs foreskrifter. Men i 1970’erne vandt amerikanske maskiner som IBM og Mainframe for alvor frem, og de skulle programmeres i FORTRAN eller COBOL.

»Det var faktisk et tilbageskridt. FORTRAN havde hverken blokstruktur eller rekursion, og det var mere kompliceret at programmere med end ALGOL60,« fortæller professoren, som selv lærte at programmere med begge sprog som ung studerende.

Efterlader en solid arv

At der stadig er en solid arv fra Peter Naurs virke understreges af ACM’s nekrolog, hvor han hyldes af en anden modtager af Turing-prisen i form af Googles vicedirektør og internetpionér Vint Cerf:

»Jeg kendte ikke Peter så godt, men jeg har nydt godt af hans arbejde. Gennem mange år har jeg ivrigt brugt Backus-Naur-formen til at beskrive syntakser i computersprog og til andre konstruktioner, som eksempelvis e-mailformatet. Computervidenskaben har haft stor gavn af Peters bidrag og entusiasme for området. Jeg kommer til at savne vores årlige møder, og jeg vil huske ham med respekt og beundring,« siger Vint Cerf i ACM's nekrolog.

I de senere år levede Peter Naur et mere stille liv, men lige til det sidste havde han sin gang på sit gamle datalogiske institut, oplyser universitetet. Han beskæftigede sig som professor emeritus i stigende grad med kritiske filosofiske og psykologiske spørgsmål om, hvad computere principielt kan programmeres til. Den første søndag her i det nye år gik han så bort efter kort tids sygdom.

Men hans indflydelse er allestedsnærværende for de fleste  i vores computerbaserede samfund. Mange af de underliggende programmer, der sættes i gang, når vi tænder for computeren derhjemme, bygger nemlig til dels på den danske pioners ideer.

»Der er selvfølgelig kommet masser af ny udvikling til i både programmeringssprog og beskrivelser af dem. Men de grundlæggende principper i oversættelsen fra computersprog til maskinsprog, som får computeren til at fungere, er i stor udstrækning baseret på blandt andre Peter Naurs virke,« siger Torben Ægidius Mogensen.