これは私の前の質問にanswerのフォローアップです。Functorsの構成の例
私たちは、ファンクタが構成することを知っています。それはscalaz
でファンクタを構成する正しい方法
import scalaz._, Scalaz._
scala> val flist = Functor[List]
flist: scalaz.Functor[List] = [email protected]
scala> val foption = Functor[Option]
foption: scalaz.Functor[Option] = [email protected]
scala> flist compose foption
res0: scalaz.Functor[[α]List[Option[α]]] = [email protected]
scala> val f = flist compose foption
f: scalaz.Functor[[α]List[Option[α]]] = [email protected]
scala> val os: List[Option[Int]] = Some(1) :: Some(2) :: None :: Nil
os: List[Option[Int]] = List(Some(1), Some(2), None)
scala> f.map(os) {_ + 1}
res1: List[Option[Int]] = List(Some(2), Some(3), None)
です:私はこのようなscalaz
を使用してファンクタList[_]
とOption[_]
の構図を書き込むことができますか?
実生活ファンクショナルコンポジションの例はありますか?
既存の質問を繰り返しませんか? http://stackoverflow.com/questions/31284131/how-to-simplify-nested-map-calls – ZhekaKozlov
部分的に。私は今、ファンクタをどのように作成するのか知っています。ところであなたの答えをありがとう:)今、私はファンクタの構成の_real-life_例に興味があります。 – Michael
リスト内のオプションを十分にマッピングしていないのですか? – ZhekaKozlov