8 papers
Fail Faster: Staging and Fast Randomness for High-Performance PBT
Cynthia Richey, Joseph W. Cutler, Harrison Goldstein +1
Property-based testing (PBT) relies on generators for random test cases, often constructed using embedded domain specific languages, which provide expressive combinators for buildi…
Etna: An evaluation platform for property-based testing
Alperen Keles, Jessica Shi, Nikhil Kamath +5
Property-based testing is a mainstay of functional programming, boasting a rich literature, an enthusiastic user community, and an abundance of tools~ -- so many, indeed, that new…
Programmable Property-Based Testing
Alperen Keles, Justine Frank, Ceren Mert +2
Property-based testing (PBT) is a popular technique for establishing confidence in software, where users write properties -- i.e., executable specifications -- that can be checked…
The Search for Constrained Random Generators
Harrison Goldstein, Hila Peleg, Cassia Torczon +3
Among the biggest challenges in property-based testing (PBT) is the constrained random generation problem: given a predicate on program values, randomly sample from the set of all…
Explorable Theorems: Making Written Theorems Explorable by Grounding Them in Formal Representations
Hita Kambhamettu, Will Crichton, Sean Welleck +2
LLM-generated explanations can make technical content more accessible, but there is a ceiling on what they can support interactively. Because LLM outputs are static text, they cann…
Decision-Oriented Programming with Aporia
Saketh Ram Kasibatla, Raven Rothkopf, Hila Peleg +4
AI agents allow developers to express computational intent abstractly, reducing cognitive effort and helping achieve flow during programming. Increased abstraction, however, comes…