On Sat, Jan 13, 2018 at 11:59:52PM +0000, Johan Engelen via
> It's been a work-in-progress for half a year, but finished now:
It would be good to program custom fuzzers for Phobos modules,
especially the ones with generic code like std.algorithm and std.range,
a lot of which I suspect have unhandled edge cases and other such
overlooked flaws. Fuzzing at this level will be harder than merely
fuzzing with random data; as input we'd need higher-level objects like
ranges of various types and by-reference / by-value semantics. And
detecting problem cases may not be so easy (how to detect if, say,
reduce() returned the wrong answer when the input is randomized?).
Beware of bugs in the above code; I have only proved it correct, not tried it.
-- Donald Knuth