Explore a groundbreaking approach to random data generation in this 27-minute conference talk from ICFP 2023. Delve into the concept of reflective generators, a novel foundation that unifies and enhances various applications of random generation in property-based testing and beyond. Learn how these generators can 'reflect' on input values to calculate random choices, combining ideas from free generators and partial monadic profunctors. Discover how reflective generators improve shrinking and mutation algorithms, generalize example-based generation, and serve as checkers and partial value completers. Gain insights from experts Harrison Goldstein, Samantha Frohlich, Meng Wang, and Benjamin C. Pierce as they present their research on this innovative technique that bridges bidirectional programming and property-based testing.
Overview
Syllabus
[ICFP'23] Reflecting on Random Generation
Taught by
ACM SIGPLAN