Hvordan skal vi programmere i fremtiden?

Hvordan kommer fremtidens programmeringssprog til at se ud? Debatten ruller blandt verdens tungeste sprog-designere. Læs et kvalificeret bud.

Artikel top billede

Ole Lehrmann Madsen, som har været med i software-udviklingen gennem 40 år, er direktør for Alexandra-Instituttet, der fungerer som brobygger mellem it-forskning og erhvervsliv.

Programmering af flerkerne-processorer og repræsentation af den virkelige verden direkte i programmeringssprogene.

Det er nogle af de ting, som står øverst på ønske-listen hos nogle af verdens mest indflydelsesrige sprog-designere.

På den årlige OOPSLA-konference om objekt-orienterede programmerings-sprog blev der for nylig diskuteret fremtidens udfordringer for program-meringssprog.

Det var en række koryfæer indenfor programmerings-sprog, der diskuterede programmeringssprogenes udvikling:

James Gosling, ophavsmand til Java.
Guy Steel, Lisp-ekspert.
Anders Hejlsberg, Ophavsmand til C#, J++, Delphi, Turbo-pascal og Poly-Pascal.
Bertrand Meyer, ophavsmand til Eiffel.
Stephen Fraser, Cisco.
Ole Lehrmann Madsen, designer af Beta.

Computerworld har talt med datalogi-professor Ole Lehrmann Madsen om OOPSLA-konferencen og fremtiden for programmeringssprog.

Foruden at have været med i software-udviklingen gennem 40 år, er Ole Lehrmann Madsen direktør for Alexandra-Instituttet, der fungerer som brobygger mellem it-forskning og erhvervsliv.

Hardware-udvikling skaber software-udfordringer

OOPSLA-konferencens panel var enige om, at efterhånden som flerkerne-processorer bliver mere udbredt, vil det give udfordringer til softwareudviklingen.

"Om nogle år vil selv desktop-pc'er have mange kerner. Hvordan udnytter man det bedst muligt og hvordan programmerer man flerkerneprocessorer?" spørger Ole Lehrmann Madsen.

Med en normal enkeltkerne-processor kan en computer kun udføre én instruktion ad gangen. Den kan gøre det usandsynligt hurtigt, så det virker som om den gør flere ting på samme tid, men i realiteten arbejder processoren altså med én instruktion ad gangen.

Med flerkerneprocessorer er det muligt at lave flere ting på samme tid i et program. Et program kan simpelthen deles op i to eller flere parallelle forløb.

Det giver selvfølgelig en effektiviseringsgevinst, men også en række udfordringer.

"To eller flere parallelle, sekventielle forløb kan skabe problemer. Hvis de samme data anvendes af parallelle processer, kan det gå galt.

Hvis den ene læser data, mens den anden skriver data, så er det inkonsistente data, der læses. Derfor forsøger man med alle mulige teknikker at synkronisere forløbene og låse data, så data ikke kan læses, mens der opdateres.

Det lyder måske simpelt, men i store systemer med millioner af linjers kode, meget data og mange processorer, så er det uhyggeligt kompliceret og svært at finde fejl.

Denne form for samtidighed eller concurrency-problemer er en meget stor udfordring," forklarer Ole Lehrmann Madsen.


Tråde, Erlang og andre mulige løsninger
I dag er der sprogkonstruktioner som tråde i Java, der forsøger at løse samtidighedsproblemer.

"Tråde i Java hjælper lidt, men det er ikke nok. Der er ikke noget i Java, der forhindrer, at trådene tilgår de samme variabler.

Man kan lave monitorer med entry, men det er svært at bruge, når det virkelig skalerer op.

Guy Steel mente, at konstruktioner som tråde i Java er en del af problemet, det er ikke den vej, man skal gå. Det er jeg ikke nødvendigvis helt enig med ham i, men der er masser af problemer med at kode den slags i Java.

Derfor snakker man også om, hvorvidt Javas biblioteker er trådsikre (thread-safe, red.). Er de robuste nok til at et containerlibrary eller en datastruktur kan anvendes fra flere forskellige tråde på samme tid?

Man prøver at indbygge ting, der gør samtidighed muligt, men det er kompliceret," siger Ole Lehrmann Madsen.

Nyt sprog eller Erlang

En anden måde at løse problemet med samtidighed er at konstruere et nyt programmeringssprog, der er specielt egnet til det. Der er delte meninger, om det er vejen frem. Erlang er et eksempel på et sprog specielt udviklet til at håndtere samtidighed.

"Erlang er det sprog hvor concurrency er i centrum. Der er mange, der er begejstrede for Erlang. Jeg har ikke selv erfaring med det, men jeg har bogen liggende, så jeg skal have læst den igen," siger Ole Lehrmann Madsen.

Erlang er et eksempel på et sprog, som måske ikke er så kendt i de brede udviklerkredse, men som kan få indirekte indflydelse på mainstream-sprog som C# og Java.

Det er ikke ukendt med forskersprog, der inspirerer mainstream-programmeringssprog.

Ole Lehrmann Madsen har selv været med til at udvikle programmeringssproget Beta, som måske ikke har den store udbredelse, men som i sprogdesign-kredse er et anerkendt sprog, ligesom Bertrand Meyers Eiffel-sprog har en høj stjerne blandt sprogdesignere.

Læs videre i morgen, torsdag, om fremtidens programmeringssprog - modellering og domænespecifikt.

Læs mere nu om danskernes banebrydende indflydelse siden 60'erne
Banebrydende dansk indflydelse

.

Computerworld Events

Vi samler hvert år mere end 6.000 deltagere på mere end 70 events for it-professionelle.

Ekspertindsigt – Lyt til førende specialister og virksomheder, der deler viden om den nyeste teknologi og de bedste løsninger.
Netværk – Mød beslutningstagere, kolleger og samarbejdspartnere på tværs af brancher.
Praktisk viden – Få konkrete cases, værktøjer og inspiration, som du kan tage direkte med hjem i organisationen.
Aktuelle tendenser – Bliv opdateret på de vigtigste dagsordener inden for cloud, sikkerhed, data, AI og digital forretning.

Sikkerhed | Aarhus C

Executive roundtable: Cyberrobusthed i praksis

Cyberangreb rammer driften. NIS2 og DORA kræver dokumenteret gendannelse under pres. Få konkret metode til at teste, måle og bevise robusthed på tværs af cloud, SaaS og leverandører. Deltag i lukket roundtable med Commvault og Hitachi.

Digital transformation | København Ø

Sådan etablerer du digital suverænitet

Digital suverænitet afgør kontrol over data, systemer og afhængigheder i Danmark. Computerworld samler Dansk Erhverv og IBM-eksperter om konkrete arkitekturvalg, governance og platforme, der sikrer reel kontrol. Få overblik og handlekraft.

Sikkerhed | Online

Cyber Briefing: AI kan udnytte dine VPN‑svagheder og lække dine data på sekunder

AI-agenter arbejder konstant og i maskinhastighed. Klassiske VPN-modeller mister overblik, kontrol og sporbarhed. Hør hvordan adgang, handlinger og automatisering sikres i en AI-drevet virkelighed. Tilmeld dig nu

Se alle vores events inden for it

Netcompany A/S

Network Engineer

Københavnsområdet

PensionDanmark

Senior Data Specialist til Data Hub

Københavnsområdet

SOS International

Platform Engineer – Team Lead

Københavnsområdet

Navnenyt fra it-Danmark

netIP har pr. 20. januar 2026 ansat Darnell Olsen som Datateknikerelev ved netIP's kontor i Herning. Han har tidligere beskæftiget sig med diverse opgaver omkring biludlejning, da han har været ansat hos Europcar. Nyt job
Immeo har pr. 1. februar 2026 ansat Patricia Oczki som Marketing Manager. Hun kommer fra en stilling som Head of Marketing and Communication hos Coach Solutions. Nyt job
Norriq Danmark A/S har pr. 1. februar 2026 ansat Michael Benner som Senior Solution Architect. Han skal især beskæftige sig med Microsoft Fabric Accelerator Framework herunder videreudvikling af frameworket, kundeimplementeringer og pre-sales opgaver. Han kommer fra en stilling som løsningensarkitekt hos Columbus Data & AI. Han er uddannet Økonomistyring fra Aalborg Universitet. Han har tidligere beskæftiget sig med at være ansat i revisionsbranchen hos PwC Forensic og Deloitte Forensic. Nyt job

Michael Benner

Norriq Danmark A/S

Lector ApS har pr. 2. februar 2026 ansat Jacob Pontoppidan som Sales Executive i Lectors TeamShare gruppe. Jacob skal især beskæftige sig med vækst af TeamShare med fokus på kommerciel skalering, mersalg og en stærk go to market eksekvering. Jacob har tidligere beskæftiget sig med salg og forretningsudvikling i internationale SaaS virksomheder. Nyt job

Jacob Pontoppidan

Lector ApS