If we add MonadGen instances then Jack can easily be swapped with QC or SC for types that provide generators in terms of MonadGen.
This also means libraries using jack for testing can provide generators for their types without promoting it from a devDependency to a dependency.