Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- override def run(args: List[String]): IO[ExitCode] = {
- recurr[IO](5, List.empty)
- .flatMap { ns =>
- Iterant.fromList(ns)
- }
- .take(2)
- .map(println)
- .toListL
- .map(_ => ExitCode.Success)
- }
- def recurr[F[_]: Sync](count: Int, acc: List[Int]): Iterant[F, List[Int]] = {
- println(s"recurr($count)")
- if (count > 0) recurr(count -1, count :: acc)
- else Iterant.eval(acc)
- }
- def recurr1[F[_]: Sync](count: Int, acc: List[Int]): Iterant[F, List[Int]] = Iterant.suspend {
- println(s"recurr($count)")
- if (count > 0) recurr(count -1, count :: acc)
- else Iterant.eval(acc)
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement