Interactive systems with appealing visualizations are the hallmark of todays, mostly web-based, systems. Under the hood, the implementation of such systems leaves much to be desired which makes them hard to extend and maintain. Atze van der Ploeg, PhD student at Centrum Wiskunde & Informatica (CWI) in Amsterdam, approaches this problem by exploring how various abstractions, such as functions and methods, can be used in this domain. With the concepts that he has developed, programmers can more easily and efficiently build and maintain interactive systems.
His research presents new methods for creating scalable, resolution-independent, graphics, and for drawing more compact tree layouts. Another important problem that Van der Ploeg addresses is how to organize interactive systems. In the usual approach, callbacks are used to respond to user input. In this method, the control flow of the program is dictated by the events that occur and not by the programmer.
In larger systems, the interference between many different callbacks becomes problematic and leads to the so-called callback hell, resulting in a software system that becomes harder and harder to understand. A new method for functional reactive programming, is proposed as a solution. Both the expressive power and the efficient implementation of this new approach are explored and illustrated.
This work is a step in the direction of composing interactive systems from reusable components.
Van der Ploeg will defend his dissertation "Efficient Abstractions for Visualization and Interaction”, 8 April, 2015, at the University of Amsterdam. Promotor is Prof.dr. Paul Klint and Dr. Tijs van der Storm acts as co-promotor.