Back to Fpinscala

11.Answer

answerkey/laziness/11.answer.md

latest164 B
Original Source
scala
def unfold[A, S](state: S)(f: S => Option[(A, S)]): LazyList[A] =
  f(state) match
    case Some((h,s)) => cons(h, unfold(s)(f))
    case None => empty