Closed duesee closed 4 months ago
I cheated and build the tree in reverse now (taking a few shortcuts) -- see #454. It seems to generate good enough test data. This unblocks fuzzing for now.
Idea: Can we use some async machinery to desugar recursive functions into state machines to "automatically" transform them into stack-based iterative functions? Having kind of a hard time doing this by hand ...
Notes:
Idea: Can we use some async machinery to desugar recursive functions into state machines to "automatically" transform them into stack-based iterative functions?
I think this is sometimes called trampoline. It's worth a try, but the biggest problem is probably the borrow checker.
Our
Arbitrary
implementations for recursive types are... meh...Thread
derivesArbitrary
, makes everything slower, and needs to be bounded (asSearchKey
). This is all a pain point currently.