Author note: The original title is "Property based testing: tale of two shrinkers", which is retroactively a bit bad title choice on my part; the title I submitted it under sums the content up better I believe.
This is a talk I gave internally at my company (I'm also planning to give an updated version at [Haskell Exchange 2022](https://events.skillsmatter.com/haskellx2022) in a month or so), about approaches to shrinking in PBT libraries and their issues, and how the [Hypothesis](https://github.com/HypothesisWorks/hypothesis) approach ("internal shrinking") solves those issues yet remains mostly unknown. There's also a bit of a call to action to PBT library maintainers to adopt this approach at the end :)
I'm a co-maintainer of [elm-test](https://github.com/elm-explorations/test), the Elm PBT library, which has historically used the rose tree approach (second one mentioned in the video) and recently switched to the internal shrinking approach in v2.0.0. We like it so far!
This is a talk I gave internally at my company (I'm also planning to give an updated version at [Haskell Exchange 2022](https://events.skillsmatter.com/haskellx2022) in a month or so), about approaches to shrinking in PBT libraries and their issues, and how the [Hypothesis](https://github.com/HypothesisWorks/hypothesis) approach ("internal shrinking") solves those issues yet remains mostly unknown. There's also a bit of a call to action to PBT library maintainers to adopt this approach at the end :)
I'm a co-maintainer of [elm-test](https://github.com/elm-explorations/test), the Elm PBT library, which has historically used the rose tree approach (second one mentioned in the video) and recently switched to the internal shrinking approach in v2.0.0. We like it so far!