タグ

関連タグで絞り込む (1)

タグの絞り込みを解除

scalazに関するmodal_soulのブックマーク (1)

  • Scalaにおける型パラメータの部分適用 [({type F[X] = G[A,X]})#F] について - ( ꒪⌓꒪) ゆるよろ日記

    Tumblrから出戻ってきました。 8/4のLL DecadeのLT大会に出るのでぜひお越しください。 さて、モナってますか? scalazなどでよく出現する[({type F[X] = G[A,X]})#F]のようなコードですが、これが何を意味しているのか最近やっと理解できたので、久しぶりにScalaの事書きます。 この記事はhigher kinded type(高階型)を理解していることが前提です。 結論からいうと、型パラメータの部分適用を行うためのテクニックです。以下のサンプルコードはscalazを使ってます。 用語 まず、この記事で使う用語を定義します。 higher kinded type(高階型) 「いくつかの型パラメータを取る型コンストラクタ」のこと。 例えば、ListはList[Int]のように、「型パラメータをひとつ取る型」なので高階型。 Eitherは、Either[T

    Scalaにおける型パラメータの部分適用 [({type F[X] = G[A,X]})#F] について - ( ꒪⌓꒪) ゆるよろ日記
    modal_soul
    modal_soul 2014/07/14
    わかりやすい
  • 1