Efficiënte abstracties voor ontwikkelen van visualisatie en interactie

De meeste webgebaseerde systemen zijn interactief en kenmerken zich door aansprekende visualisaties. De implementatie van dergelijke systemen laat echter veel te wensen over, waardoor ze moeilijk uit te breiden en te onderhouden zijn. Atze van der Ploeg, promovendus aan het Centrum Wiskunde & Informatica (CWI) in Amsterdam, benadert dit probleem door te onderzoeken hoe verschillende abstracties, zoals functies en methoden, in dit domein kunnen worden toegepast. Met de concepten die hij ontwikkelde kunnen programmeurs makkelijker en efficiënter interactieve systemen ontwikkelen en onderhouden.

Zijn onderzoek presenteert nieuwe methoden voor het creëren van schaalbare, resolutie-onafhankelijke graphics en voor het berekenen van compacte layouts van bomen. Een ander belangrijk probleem dat Van der Ploeg in zijn onderzoek adresseert is de organisatie van interactieve systemen. In de gebruikelijke benadering worden ‘callbacks’ toegepast om te reageren op de invoer van de gebruiker. Hierbij wordt de besturingsstroom van het programma bepaald door de gebeurtenissen die optreden en niet door de volgorde die de programmeur heeft aangegeven.

Bij grotere systemen, wordt de interferentie tussen verschillende callbacks problematisch en dit leidt tot de zogenoemde ‘callback hel’. Dit resulteert in softwaresystemen die steeds onoverzichtelijker en moeilijker te begrijpen zijn. In zijn onderzoek stelt Van der Ploeg als oplossing een nieuwe methode voor functioneel reactief programmeren voor. Zowel de expressieve kracht als efficiënte uitvoering van deze nieuwe aanpak worden verkend en geïllustreerd.

Dit werk is een stap in de richting van het samenstellen van interactieve systemen op basis van herbruikbare componenten. Van der Ploeg promoveerde op zijn proefschrift "Efficiënt Abstractions for Visualization and Interaction", aan de Universiteit van Amsterdam.