Demo Data from EDBT 2026 / reviewers in the wild / expert
Scott Guest
dblp:346/8541
· DBLP profile ↗
1ranked-venue papers
0as first author
1since 2021 · last 2023
0009-0005-1751-6470ORCID · reported
Domains — the database's venue-derived domains; a paper can count in several
Software engineering, systems software and programming languages · 1 · 1 since 2021
Expertise — from the expertise taxonomy: the topics of the expert's papers under the CCF categories. A weight counts papers with recency: 1 for a paper about the topic, 0.3 when the topic is its context, halved every five years.
| Software engineering, system software, and programming languages
1 paper |
Programming languages and type systems · 87% Program analysis · 13% |
Topics — the 2 heaviest of 3, each with the papers that count most for it
| Topic | Weight | Papers | Last | Evidence papers |
|---|---|---|---|---|
Programming languages and type systems › language semantics › formal semantics
operational semantics |
0.7 | 1 | 2023 | Live Pattern Matching with Typed Holes · Proc. ACM Program. Lang. 2023 |
Programming languages and type systems
type theory |
0.7 | 1 | 2023 | Live Pattern Matching with Typed Holes · Proc. ACM Program. Lang. 2023 |
Methods — techniques the papers use, named apart from their topics
typed lambda calculus · 0.7mechanization in agda · 0.7first-order entailment · 0.7
| Year | Publication | Venue | Position |
|---|---|---|---|
| 2023 | Live Pattern Matching with Typed HolesabstractSeveral modern programming systems, including GHC Haskell, Agda, Idris, and Hazel, support typed holes . Assigning static and, to varying degree, dynamic meaning to programs with holes allows program editors and other tools to offer meaningful feedback and assistance throughout editing, i.e. in a live manner. Prior work, however, has considered only holes appearing in expressions and types. This paper considers, from type theoretic and logical first principles, the problem of typed pattern holes. We confront two main difficulties, (1) statically reasoning about exhaustiveness and irredundancy when patterns are not fully known, and (2) live evaluation of expressions containing both pattern and expression holes. In both cases, this requires reasoning conservatively about all possible hole fillings. We develop a typed lambda calculus, Peanut, where reasoning about exhaustiveness and redundancy is mapped to the problem of deriving first order entailments. We equip Peanut with an operational semantics in the style of Hazelnut Live that allows us to evaluate around holes in both expressions and patterns. We mechanize the metatheory of Peanut in Agda and formalize a procedure capable of deciding the necessary entailments. Finally, we scale up and implement these mechanisms within Hazel, a programming environment for a dialect of Elm that automatically inserts holes during editing to provide static and dynamic feedback to the programmer in a maximally live manner, i.e. for every possible editor state. Hazel is the first maximally live environment for a general-purpose functional language. Yongwei Yuan, Scott Guest, Eric Griffis, Hannah Potter, David Moon, Cyrus Omar |
Proc. ACM Program. Lang. | 2 |