Write a Blog >>
Sun 20 - Fri 25 October 2019 Athens, Greece
Fri 25 Oct 2019 16:00 - 16:30 at Room 1 - Session 3

Program state visualizations (PSVs) help programmers understand hidden program state like objects, references, and closures. Unfortunately, existing PSV tools do not support custom language semantics, which educators often use to introduce programming languages gradually. They also fail to visualize key pieces of program state, which can lead to incorrect and confusing visualizations.

Theia, a generic PSV framework, uses formal abstract machine definitions to produce complete, continuous, and consistent (CCC) PSVs.

To produce CCC visualizations with Theia, an educator only needs to specify an abstract machine and optionally customize the resulting web page, allowing her to visualize custom language semantics without developing a language-specific tool. We explain how Theia’s design produces CCC PSVs by construction with a series of case studies based on a functional and an imperative language.

Theia’s design is guided by the existing, but underappreciated, insight that formalized notional machines are abstract machines. We describe research questions and opportunities in Programming Languages (PL) and Computer Science Education Research (CER) that result from this observation.

Fri 25 Oct
Times are displayed in time zone: Beirut change

16:00 - 17:30: Session 3SPLASH-E at Room 1
16:00 - 16:30
Theia: Automatically Generating Correct Program State Visualizations
Josh PollockUniversity of Washington, Jared RoeschUniversity of Washington, USA, Doug WoosUniversity of Washington, Zachary TatlockUniversity of Washington, Seattle
16:30 - 17:00
Lambdulus: Teaching Lambda Calculus Practically
Jan SliackyFaculty of Informatics, Czech Technical University, Petr MajCzech Technical University
17:00 - 17:30
Panel & Group Discussion
Elisa BaniassadUniversity of British Columbia