質問

私は現在、Scalaz Nonblocking Futuresなどで遊んでいます。約束。私は次の関数を尾を回復的にするのに苦労しています:

@tailrec
private def repeat( res: Promise[I] ):Promise[I] =
  res map p flatMap { 
    (b:Boolean) =>
      if( b ) repeat( res flatMap f ) else res
  }

どこ p タイプの述語です I=>Booleanf タイプと同時関数です I=>Promise[I].

メソッドは注釈なしでコンパイルされます。

ヒントはありますか?ありがとう

正しい解決策はありません

ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top