University of Birmingham > Talks@bham > Lab Lunch > Self-explaining computation

Self-explaining computation

Add to your list(s) Download to your calendar using vCal

If you have a question about this talk, please contact Dan Ghica.

Unusual date/venue

The execution of a program is usually something that takes place behind the scenes, yielding output but otherwise remaining hidden. In this talk we consider what becomes possible if we open up the black box, and treat computation as a concrete, tangible structure.

In the first part of the talk, we show how end-users and programmers alike can interactively explore a live program in order to understand its behaviour or track the provenance of its output back to its data sources. These explorations can be fine-grained: the user can select a part of the output and see the parts of the computation contributing to it, or select a part of the program and see the parts of the computation it contributes to.

In the second part of the talk, we show how the user can make a change to a live program and have the changes immediately reflected in the structure of the computation. This allows the user to see the intensional consequences of changes, and enables programming activities such as testing, debugging and bug-fixing to be efficiently interwoven.

We limit our explorations to a pure, call-by-value functional language with data types. We conclude by mentioning some of the main challenges, and areas for future extension, including laziness and distribution.

This talk is part of the Lab Lunch series.

Tell a friend about this talk:

This talk is included in these lists:

Note that ex-directory lists are not shown.

 

Talks@bham, University of Birmingham. Contact Us | Help and Documentation | Privacy and Publicity.
talks@bham is based on talks.cam from the University of Cambridge.