0

関数fとチャンネルがありますc

def f(i: Int) = Task.now(i + 1)

val c = channel.lift(f)

f前の計算の出力に関数を任意の回数 (または無期限に)継続的に適用したいと思います。私は初期値を提供しています。

プロセスを定義できるp

val p = Process.emit(1).through(c)

ただし、これは一度だけ実行されます。

c最後の計算の出力に適用し続けるにはどうすればよいですか?

4

1 に答える 1

0

iterateEval[F[_], A](start: A)(f: A => F[A])関数を使用してそれを行うことができます

val p = Process.iterateEval(1)(f).take(10)
于 2015-09-18T23:18:55.340 に答える