Write a Blog >>
SPLASH 2017
Sun 22 - Fri 27 October 2017 Vancouver, Canada
Tue 24 Oct 2017 09:20 - 09:40 at Regency D - Spring

The essence of programming is abstraction. That is the problem, for we have very limited powers of abstraction. Live programming helps by revealing how a program will execute as it is edited, grounding the abstract in a concrete example. We propose a more fundamental solution: a programming medium which reifies execution. Programs are execution traces, and programming is direct manipulation of such executions. This approach offers pervasive liveness like that of spreadsheets, while still providing sequential procedures, input/output, and side-effects. Reified execution also enables a novel programming technique: interventions. An intervention tests and overrides behavior at a specific point in a reified execution. Interventions are made through direct manipulation in the programming environment and are stable because code is edited structurally, not textually. We will show how interventions allow testing and mocking to be done more easily and with finer granularity than with code-based testing frameworks. We will also demonstrate how interventions provide scaffolding that assists program development through small steps of gradual abstraction.

Tue 24 Oct

live-2017
08:30 - 10:00: LIVE 2017 - Spring at Regency D
live-2017150882660000008:30 - 09:20
Talk
live-2017150882960000009:20 - 09:40
Talk
Pre-print Media Attached
live-2017150883080000009:40 - 10:00
Talk
Media Attached