Back to Fpinscala

11.Answer

answerkey/testing/11.answer.md

latest207 B
Original Source
scala
extension [A](self: SGen[A]) def map[B](f: A => B): SGen[B] =
  n => self(n).map(f)

extension [A](self: SGen[A]) def flatMap[B](f: A => SGen[B]): SGen[B] =
  n => self(n).flatMap(a => f(a)(n))