7

重複の可能性:
Scala の型ラムダとは何ですか? また、その利点は何ですか?

  1. この型定義を解決する方法: Pure[({type ?[a]=(R, a)})#?]?

  2. そのような構造を使用する理由は何ですか?

Snipped は scalaz ライブラリから来ています:

trait Pure[P[_]] {
  def pure[A](a: => A): P[A]
}

object Pure {
  import Scalaz._
//...
  implicit def Tuple2Pure[R: Zero]: Pure[({type ?[a]=(R, a)})#?] = new Pure[({type ?[a]=(R, a)})#?] {
  def pure[A](a: => A) = (Ø, a)
  }

//...
}
4

0 に答える 0