activity
20112018
most citedToward Semantic Foundations for Program Editors

12 citations · 24 across the 9 of their papers we have counts for

collaborators

10 papers

cs.PL2018

Fungi: Typed incremental computation with names

Matthew A. Hammer, Jana Dunfield, Kyle Headley +2

Incremental computations attempt to exploit input similarities over time, reusing work that is unaffected by input changes. To maximize this reuse in a general-purpose programming…

cs.PL2018

Live Functional Programming with Typed Holes

Cyrus Omar, Ian Voysey, Ravi Chugh +1

This paper develops a dynamic semantics for incomplete functional programs, starting from the static semantics developed in recent work on Hazelnut. We model incomplete functional…

cs.PL2017★ 12 cited

Toward Semantic Foundations for Program Editors

Cyrus Omar, Ian Voysey, Michael Hilton +4

Programming language definitions assign formal meaning to complete programs. Programmers, however, spend a substantial amount of time interacting with incomplete programs -- progra…

cs.PL2017★ 3 cited

Languages of Play: Towards semantic foundations for game interfaces

Chris Martens, Matthew A. Hammer

Formal models of games help us account for and predict behavior, leading to more robust and innovative designs. While the games research community has proposed many formalisms for…

cs.PL2016

Refinement types for precisely named cache locations

Matthew A. Hammer, Jana Dunfield, Dimitrios J. Economou +1

Many programming language techniques for incremental computation employ programmer-specified names for cached information. At runtime, each name identifies a "cache location" for a…

cs.PL2016

miniAdapton: A Minimal Implementation of Incremental Computation in Scheme

Dakota Fisher, Matthew A. Hammer, William Byrd +1

We describe a complete Scheme implementation of miniAdapton, which implements the core functionality of the Adapton system for incremental computation (also known as self-adjusting…

cs.PL2016

A Vision for Online Verification-Validation

Matthew A. Hammer, Bor-Yuh Evan Chang, David Van Horn

Today's programmers face a false choice between creating software that is extensible and software that is correct. Specifically, dynamic languages permit software that is richly ex…

cs.DS2016

The Random Access Zipper: Simple, Purely-Functional Sequences

Kyle Headley, Matthew A. Hammer

We introduce the Random Access Zipper (RAZ), a simple, purely-functional data structure for editable sequences. A RAZ combines the structure of a zipper with that of a tree: like a…

cs.PL2016★ 9 cited

Hazelnut: A Bidirectionally Typed Structure Editor Calculus

Cyrus Omar, Ian Voysey, Michael Hilton +2

Structure editors allow programmers to edit the tree structure of a program directly. This can have cognitive benefits, particularly for novice and end-user programmers. It also si…

cs.PL2011

Self-Adjusting Stack Machines

Matthew A. Hammer, Georg Neis, Yan Chen +1

Self-adjusting computation offers a language-based approach to writing programs that automatically respond to dynamically changing data. Recent work made significant progress in de…