VLDB 2026 Research / reviewers in the wild / expert
Michael Ballantyne
dblp:80/1084 · also A. Michael Ballantyne
· DBLP profile ↗
7ranked-venue papers
4as first author
3since 2021 · last 2026
0009-0007-9958-6281ORCID · corroborated
Domains — the database's venue-derived domains; a paper can count in several
Software engineering, systems software and programming languages · 6 · 3 first-author · 3 since 2021Applied, interdisciplinary, general and emerging computing · 1 · 1 first-author
| Year | Publication | Venue | Position |
|---|---|---|---|
| 2026 | Mixing visual and textual code
Leif Andersen, Michael Ballantyne, Cameron Moy, Matthias Felleisen, Stephen Chang 0001 |
J. Funct. Program. | 2 |
| 2025 | Multi-stage Relational ProgrammingabstractWe transport multi-stage programming from functional to relational programming, with novel constructs to give programmers control over staging and non-determinism. We stage interpreters written as relations, in which the programs under interpretation can contain holes representing unknown expressions or values. By compiling the known parts without interpretive overhead and deferring interpretation to run time only for the unknown parts, we compound the benefits of staging (e.g., turning interpreters into compilers) and relational interpretation (e.g., turning functions into relations and synthesizing from sketches). We extend miniKanren with staging constructs and apply the resulting multi-stage language to relational interpreters for subsets of Racket and miniKanren as well as a relational recognizer for context-free grammars. We demonstrate significant performance gains across multiple synthesis problems, systematically comparing unstaged and staged computation, as well as indicatively comparing with an existing hand-tuned relational interpreter. Michael Ballantyne, Rafaello Sanna, Jason Hemann, William E. Byrd, Nada Amin |
Proc. ACM Program. Lang. | 1 |
| 2024 | Compiled, Extensible, Multi-language DSLs (Functional Pearl)abstractImplementations of domain-specific languages should offer both extensibility and performance optimizations. With the new syntax-spec metalanguage in Racket, programmers can easily create DSL implementations that are both automatically macro-extensible and subject to conventional compiler optimizations. This pearl illustrates this approach through a new implementation of miniKanren, a widely used relational programming DSL. The miniKanren community has explored, in separate implementations, optimization techniques and a wide range of extensions. We demonstrate how our new miniKanren implementation with syntax-spec reconciles these features in a single implementation that comes with both an optimizing compiler and an extension mechanism. Furthermore, programmers using the new implementation benefit from the same seamless integration between Racket and miniKanren as in existing shallow embeddings. Michael Ballantyne, Mitch Gamburg, Jason Hemann |
Proc. ACM Program. Lang. | 1 |
| 2020 | Adding interactive visual syntax to textual codeabstractMany programming problems call for turning geometrical thoughts into code: tables, hierarchical structures, nests of objects, trees, forests, graphs, and so on. Linear text does not do justice to such thoughts. But, it has been the dominant programming medium for the past and will remain so for the foreseeable future. This paper proposes a novel mechanism for conveniently extending textual programming languages with problem-specific visual syntax. It argues the necessity of this language feature, demonstrates the feasibility with a robust prototype, and sketches a design plan for adapting the idea to other languages. Leif Andersen, Michael Ballantyne, Matthias Felleisen |
Proc. ACM Program. Lang. | 2 |
| 2020 | Macros for domain-specific languagesabstractMacros provide a powerful means of extending languages. They have proven useful in both general-purpose and domain-specific programming contexts. This paper presents an architecture for implementing macro-extensible DSLs on top of macro-extensible host languages. The macro expanders of these DSLs inherit the syntax system, hygienic expansion, and more from the host. They transform the extensible DSL syntax into a DSL core language. This arrangement has several important consequences. It becomes straightforward to integrate the syntax of various DSLs and the host language when their expanders share these inherited components. Also, a DSL compiler may be designed around a fixed core language, even for an extensible DSL. Finally, macros empower programmers to safely grow DSLs on their own and tailor them to their needs. Michael Ballantyne, Alexis King, Matthias Felleisen |
Proc. ACM Program. Lang. | 1 |
| 2020 | Dependent type systems as macrosabstractWe present Turnstile+, a high-level, macros-based metaDSL for building dependently typed languages. With it, programmers may rapidly prototype and iterate on the design of new dependently typed features and extensions. Or they may create entirely new DSLs whose dependent type ``power'' is tailored to a specific domain. Our framework's support of language-oriented programming also makes it suitable for experimenting with systems of interacting components, e.g., a proof assistant and its companion DSLs. This paper explains the implementation details of Turnstile+, as well as how it may be used to create a wide-variety of dependently typed languages, from a lightweight one with indexed types, to a full spectrum proof assistant, complete with a tactic system and extensions for features like sized types and SMT interaction. Stephen Chang 0001, Michael Ballantyne, Milo Turner, William J. Bowman |
Proc. ACM Program. Lang. | 2 |
| 1977 | Automatic Proofs of Theorems in Analysis Using Nonstandard TechniquesabstractA procedure has been developed for automatically proving theorems in analysts by using the methods of nonstandard analysis This procedure utlhzes the field lq*, which IS a (nonstandard) extension of the real field ~R containing "infinitesimals" and "infinitely large numbers " A theorem T about 1R is valid if and only If ItS corresponding form T* Is vahd about IR* A given theorem T is (automatically) converted to T* and proved in this new setting, which is particularly well suited for automatic proofs The conversion to T* is obtained by using the nonstandard definitions of terms such as "continuous," "compact," and "accumulation point "An existing prover has been slightly altered to carry out these proofs The concepts of typing, reduction (rewrite rules), algebraic simplification, and controlled forward chaining play major roles in handhng infinitesimals and other typed quantities A computer program has proved several theorems in analysis including the Bolzano-Weierstrass theorem, the theorem that a continuous function on a compact set is umformly continuous, and some theorems about sequences KEY WORDS AND PHRASES theorem proving, natural deduction, nonstandard analysis, analysis, database Michael Ballantyne, W. W. Bledsoe |
J. ACM | 1 |