VLDB 2026 Research / reviewers in the wild / expert
Alexander Y. Bai
dblp:403/5178
· DBLP profile ↗
2ranked-venue papers
0as first author
2since 2021 · last 2025
0009-0009-7458-7864ORCID · reported
Domains — the database's venue-derived domains; a paper can count in several
Software engineering, systems software and programming languages · 2 · 2 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
2 papers |
Program analysis · 36% Program synthesis and code generation · 18% Software testing · 18% |
Topics — the 6 heaviest of 7, each with the papers that count most for it
| Topic | Weight | Papers | Last | Evidence papers |
|---|---|---|---|---|
Runtime systems and virtual machines › virtual machine implementation
bytecode rewriting |
0.9 | 1 | 2025 | Debugging WebAssembly? Put Some Whamm on It! · Proc. ACM Program. Lang. 2025 |
Program analysis
dynamic analysis |
0.9 | 1 | 2025 | Debugging WebAssembly? Put Some Whamm on It! · Proc. ACM Program. Lang. 2025 |
Program analysis › dynamic analysis
instrumentation |
0.9 | 1 | 2025 | Debugging WebAssembly? Put Some Whamm on It! · Proc. ACM Program. Lang. 2025 |
Software testing
test input generation |
0.9 | 1 | 2025 | Metamorph: Synthesizing Large Objects from Dafny Specifications · Proc. ACM Program. Lang. 2025 |
Program verification
deductive verification |
0.3 | 1 | 2025 | Metamorph: Synthesizing Large Objects from Dafny Specifications · Proc. ACM Program. Lang. 2025 |
Program verification
SMT-based verification |
0.3 | 1 | 2025 | Metamorph: Synthesizing Large Objects from Dafny Specifications · Proc. ACM Program. Lang. 2025 |
Methods — techniques the papers use, named apart from their topics
weighted a* search · 0.9static and dynamic predication · 0.9intrinsification · 0.9integer programming · 0.9declarative match rules · 0.9counterexample-guided inductive synthesis · 0.9SMT solving · 0.9
| Year | Publication | Venue | Position |
|---|---|---|---|
| 2025 | Metamorph: Synthesizing Large Objects from Dafny SpecificationsabstractProgram synthesis aims to produce code that adheres to user-provided specifications. In this work, we focus on synthesizing sequences of calls to formally specified APIs to generate objects that satisfy certain properties. This problem is particularly relevant in automated test generation, where a test engine may need an object with specific properties to trigger a given execution path. Constructing instances of complex data structures may require dozens of method calls, but reasoning about consecutive calls is computationally expensive, and existing work typically limits the number of calls in the solution. In this paper, we focus on synthesizing such long sequences of method calls in the Dafny programming language. To that end, we introduce Metamorph, a synthesis tool that uses counterexamples returned by the Dafny verifier to reason about the effects of method calls one at a time, limiting the complexity of solver queries. We also aim to limit the overall number of SMT queries by comparing the counterexamples using two distance metrics we develop for guiding the synthesis process. In particular, we introduce a novel piecewise distance metric, which puts a provably correct lower bound on the number of method calls in the solution and allows us to frame the synthesis problem as weighted A* search. When computing piecewise distance, we view object states as conjunctions of atomic constraints, identify constraints that each method call can satisfy, and combine this information using integer programming. We evaluate Metamorph’s ability to generate large objects on six benchmarks defining key data structures: linked lists, queues, arrays, binary trees, and graphs. Metamorph can successfully construct programs that require up to 57 method calls per instance and compares favorably to an alternative baseline approach. Additionally, we integrate Metamorph with DTest, Dafny’s automated test generation toolkit, and show that Metamorph can synthesize test inputs for parts of the AWS Cryptographic Material Providers Library that DTest alone is not able to cover. Finally, we use Metamorph to generate executable bytecode for a simple virtual machine, demonstrating that the techniques described here are more broadly applicable in the context of specification-guided synthesis. Aleksandr Fedchin, Alexander Y. Bai, Jeffrey S. Foster |
Proc. ACM Program. Lang. | 2 |
| 2025 | Debugging WebAssembly? Put Some Whamm on It!abstractDebugging and monitoring programs are integral to engineering and deploying software. Dynamic analyses monitor applications through source code or IR injection, machine code or bytecode rewriting, virtual machine APIs, or direct hardware support. While these techniques are viable within their respective domains, common tooling across techniques is rare, leading to fragmentation of skills, duplicated efforts, and inconsistent feature support. We address this problem in the WebAssembly ecosystem with Whamm, an instrumentation framework for Wasm that uses engine-level probing and has a bytecode rewriting fallback to promote portability. Whamm solves three problems: 1) tooling fragmentation, 2) prohibitive instrumentation overhead of general-purpose frameworks, and 3) tedium of tailoring low-level high-performance mechanisms. Whamm provides fully- programmable instrumentation with declarative match rules, static and dynamic predication, automatic state reporting, and user library support, achieving high performance through compiler and engine optimizations. The Whamm engine API allows instrumentation to be provided to a Wasm engine as Wasm code, reusing existing engine optimizations and unlocking new ones, most notably intrinsification, to minimize overhead. A key insight of our work is that explicitly requesting program state in match rules, rather than reflection, enables the engine to efficiently bundle arguments and even inline compiled probe logic. Whamm streamlines the tooling effort, as its bytecode-rewriting target can run instrumented programs everywhere, lowering fragmentation and advancing the state of the art for engine support. We evaluate Whamm with case studies of non-trivial monitors and show it is expressive, powerful, and efficient. Elizabeth Gilbert, Matthew Schneider, Zixi An, Suhas Thalanki, Wavid Bowman, Alexander Y. Bai, Ben L. Titzer, Heather Miller |
Proc. ACM Program. Lang. | 6 |