Vergeten computertalen zijn basis van alles om ons heen

NASA zoekt programmeurs die overweg kunnen met een stokoude computertaal. Bestaat er zoiets als een klassieke programmeertaal?

Studenten aan de Boston Latin School leren computertaal Fortran, 1968. Beeld getty

Ruimtevaartorganisatie NASA looft een prijs uit onder programmeurs die overweg kunnen met de stokoude en in onbruik geraakte computertaal Fortran. Wie een toepassing uit de jaren tachtig tienduizend keer sneller kan laten werken, maakt kans op 50 duizend euro. Aan directeur van het Meertens Instituut en hoogleraar taal- en spraaktechnologie aan de Radboud Universiteit Antal van den Bosch de vraag of er zoiets bestaat als de klassieke computertaal.

Van den Bosch: 'Bij computertalen is 'klassiek' een relatief begrip, hun historie begint halverwege de vorige eeuw, een ademtocht geleden vergeleken met natuurlijke klassieke talen. Er zijn wel overeenkomsten. Zo zijn Latijn en Grieks langzaam in onbruik geraakt. Ze overleefden doordat ze gecultiveerd werden door een relatief klein groepje mensen, omdat belangrijke kennis in die talen stond beschreven.

'Bij computertalen zie je iets vergelijkbaars: ze komen sterk op, kennen een periode van populariteit, om vervolgens in onbruik te raken. Maar de dynamiek is anders. Natuurlijke taal is communicatie, het gaat om begrepen worden, informatie willen overdragen, je verhaal doen. Software bestaat om specifiekere functionele redenen; de invloed van de economie is directer. Als een computertaal niet meer voldoet aan de eisen die bedrijven eraan stellen, verdwijnt ze.

'Toch zie je dat oude software her en der voortleeft. Denk aan een pinautomaat, waarbij je soms ineens een DOSprompt ziet. Dan realiseer je je dat er onder dat moderne uiterlijk een oude taal schuilt. En NASA maakt dus nog altijd gebruik van Fortran. Het in stand houden van dit soort schaduwsystemen is vergelijkbaar met monniken die in de Middeleeuwen de klassieke talen bestudeerden en cultiveerden.'

Antal van den Bosch, hoogleraar taal- en spraaktechnologie:'Het in stand houden van Fortran is vergelijkbaar met monniken die in de Middeleeuwen de klassieke talen cultiveerden.' Beeld RV - Milette Raats.

Raken computertalen in onbruik omdat ze te complex zijn?

'Eerder doordat ze te beperkt zijn. Op zeker moment kun je er niet meer mee doen wat je zou willen. Zo is in de loop van de tijd de behoefte ontstaan om modules, objecten, te maken die hergebruikt kunnen worden in andere toepassingen. Met zulke bouwstenen kun je veel efficiënter en generieker programmeren. Oude computertalen als Fortran, Basic en Pascal zijn niet goed in dit soort generalisaties en dit is een van de redenen waarom ze in onbruik zijn geraakt.'

Ontstaan uit oude talen weer nieuwe?

'Programmeertalen kennen net als gewone talen aftakkingen. Uit grote aftakkingen kunnen fundamenteel andere talen ontstaan, zoals Prolog, maar talen brengen ook dialecten en mengvormen voort. Zo heeft Microsoft een eigen variant op Java die lijkt op C++, een evolutie van C.'

Taal C

C is een programmeertaal uit de jaren zeventig en wordt gebruikt voor het programmeren van besturingssystemen. Onder meer Linux is in C geschreven, maar ook MacOS en Windows.

C is een zogenoemde low-leveltaal, wat betekent dat het dicht bij machinetaal staat en daardoor lastig te programmeren is, maar ook zeer krachtig is.

Veel mensen kunnen genieten van de schoonheid van taal. Bestaat dat ook voor software? Hebt u een favoriete computertaal?

'Als je meerdere talen leert, komt er uiteindelijk een in je systeem te zitten die je hart gestolen heeft. Bijvoorbeeld omdat je er als programmeur je eerste succes mee hebt geboekt, er aha-momenten mee hebt beleefd. Voor mij is dat C. Velen, net zo partijdig als ik, zien C als de spiltaal van andere computertalen. Wat Engels betekent in de wereld, is C voor de computertalen. Veel andere talen zijn verwant aan C.

'C is heel rijk en open, je kunt alles doen wat je in je hoofd hebt, maar door haar rijkheid opent ze soms ook de poorten naar de hel. Er is zelfs een spreekwoord: C gives you enough rope to hang yourself. Je kunt er ongemerkt je eigen valkuilen mee bouwen. Je moet als programmeur je eigen bewaker zijn en telkens denken: doe ik wel het juiste? C checkt zichzelf niet, zoals sommige andere talen doen. Dus als je even niet oplet, kun je haar de opdracht geven zichzelf uit te vegen.

'Jonge medewerkers schudden weleens hun hoofd als ze me zien worstelen met C. Die gebruiken veel liever het modernere Python, dat heel krachtig is, ook dankzij softwarebibliotheken die door anderen zijn ontwikkeld en die grote blokken functionaliteit als simpele eenheden aanbieden. Dat programmeert veel sneller.

Is programmeren in C als het schrijven van poëzie, terwijl Pythonprogrammeurs meer weg hebben van broodschrijvers?

'Misschien niet als poëzie, maar de vergelijking met literatuur gaat wellicht wel op. Vanwege de rijkheid van deze taal. En er is nog een overeenkomst met literatuur: met C kun je heel makkelijk software schrijven die alleen begrepen wordt door de maker.'

Meer over

Wilt u belangrijke informatie delen met de Volkskrant?

Tip hier onze journalisten


Op alle verhalen van de Volkskrant rust uiteraard copyright. Linken kan altijd, eventueel met de intro van het stuk erboven.
Wil je tekst overnemen of een video(fragment), foto of illustratie gebruiken, mail dan naar copyright @volkskrant.nl.
© 2019 DPG Media B.V. - alle rechten voorbehouden