λ. OCamlでランクn多相 レコードでもliftしたい - みずぴー日記 のコメントに関する補足。 関数を受け取って、レコードの型の異なる複数のフィールドに対して適用する高階関数を書きたいという話。 型の異なるフィールドに対して適用するには、受け取る関数は [Int]→[Int]→[Int] のような型の単相的な関数ではなく、∀a. [a]→[a]→[a] のような型の多相的な関数である必要がある。で、多相的な関数を受け取る高階関数の (∀a. [a]→[a]→[a])→Record→Record→Record のような型は、二階ラムダ計算の言葉でいうと、ランク2の型になっている。 ランクの正確な定義は Type reconstruction in finite-rank fragments of the polymorphic λ-calculus (c.f. The “Curry
Based on a short graduate course on typed lambda-calculus given at the Université Paris VII in the autumn term of 1986-7. Published by Cambridge University Press (Cambridge Tracts in Theoretical Computer Science, 7), ISBN 0 521 37181 3; first published 1989, reprinted with corrections 1990. Here is the story of how the translation came about: Jean-Yves had mentioned the notes to Paul at a conferen
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く