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

Displayed time zone: Tijuana, Baja California change

08:30 - 10:00
SpringLIVE at Regency D
08:30
50m
Talk
Keynote: User Interfaces for Live Programming
LIVE
Jun Kato National Institute of Advanced Industrial Science and Technology, Japan
09:20
20m
Talk
Reifying Programming
LIVE
Pre-print Media Attached
09:40
20m
Talk
Live Programming as Gradual Abstraction
LIVE
Sean McDirmid Independent
Pre-print Media Attached