Meng Wang
Has grant
Research Interests
Explore related searches
Contact this professor
Get a free first email built on one of their papers, ready for you to edit and send yourself.
Recent Grants
Grant: Close
Making Software Development Language-Agnostic through Cross-Language Mapping and Migration
Open Date: 2020-03-01
Close Date: 2022-02-01
Grant: Close
EXHIBIT : Expressive High-Level Languages for Bidirectional Transformations
Open Date: 2020-02-01
Close Date: 2023-01-01
Grant: Close
Bidirectional Compiler for Software Evolution
Open Date: 2018-03-01
Close Date: 2020-02-01
Grant: Close
Software Testing Guided by Differential Analysis on Programming Languages
Open Date: 2018-03-01
Close Date: 2021-02-01
Grant: Close
Testing Techniques for Functional Programming Languages
Open Date: 2016-01-01
Close Date: 2018-01-01
Articles (11)
Year:
2025
Year:
2025
Year:
2025
Year:
2024
Expert users of property-based testing often labor to craft random generators that encode detailed knowledge about what it means for a test input to be valid and interesting. Fortunately, the fruits of this labor can also be put to other uses. In the bidirectional programming literature, for example, generators have been repurposed as validity checkers, while Python's Hypothesis library uses the same structures for shrinking and mutating test inputs. To unify and generalize these uses and many others, we propose reflective generators, a new foundation for random data generators that can "reflect" on an input value to calculate the random choices that could have been made to produce it. Reflective generators combine ideas from two existing abstractions: free generators and partial monadic profunctors. They can be used to implement and enhance the aforementioned shrinking and mutation algorithms, generalizing them to work for any values that can be produced by the generator, not just ones for which a trace of the generator's execution is available. Beyond shrinking and mutation, reflective generators generalize a published algorithm for example-based generation, and they can also be used as checkers, partial value completers, and other kinds of test data producers.
Year:
2023
Year:
2023
Year:
2023
Year:
2022
Year:
2022
Year:
2022
Year:
2022
Collaborators (3)
Benjamin C. Pierce
University of Pennsylvania
Tomas Petricek
Assistant professor
Charles University
Samantha Frohlich
Academic , Lecturer in Cryptography
University of Bristol
Make your next move.
Prepare your application
Review drafts before you send them.