function1
  :: (a -> Gen b -> Gen b)
  -> Gen b
  -> Gen (a -> b)
function1 perturb gen = promote (`perturb` gen)
function1
  :: (a -> Gen b -> Gen b)
  -> Gen b
  -> Gen (a -> b)
function1 perturb gen = promote (`perturb` gen)
function1 perturb gen = promote (`perturb` gen)