型指向翻訳のための任意に型付けされた高水準中間表現

書誌事項

タイトル別名
  • Arbitrarily Typed High-level IR for Type-directed Translation

この論文をさがす

抄録

コンパイラ実装技術が成熟するにつれて,コンパイラのフロントエンドにも複数の中間形式を用いるデザインが見られるようになった.本発表では,型の記述が必要ない関数型プログラムから,型が明示された中間言語への変換を行うための高水準な中間言語を提案する.特にHaskellやOCamlといった言語を対象として,高水準中間言語を導入することによるデザイン上の有効性と,具体的な言語の仕様を与える.この高水準中間言語は,任意階の多相型システムに加えて,代数的データ型やパターンマッチ,相互再帰関数などを含み,実用の関数型言語には欠かせない機能を提供している.このように,本発表はコンパイラ実装への直接の貢献を目標として掲げ,高水準中間言語上で行う型指向翻訳とその他のコンパイラのフェーズとの関係性についても議論する.

As compiler implementation techniques have matured, designs employing multiple intermediate forms in compiler front-end have emerged. This paper proposes a high-level intermediate language designed for translating functional programs that do not require type annotations into an explicitly typed intermediate language. We focus specifically on languages like Haskell and OCaml, discussing the advantages of introducing a high-level intermediate representation in design, and providing detailed specifications of the language. This high-level intermediate language includes algebraic data types, pattern matching and mutually recursive functions. It also incorporates arbitrary-rank polymorphism, offering essential features for a practical functional language. Consequently, this paper aims to make a direct contribution to compiler implementation and also discusses the relationship between type-directed translation on the high-level intermediate language and other phases of the compiler.

収録刊行物

詳細情報 詳細情報について

問題の指摘

ページトップへ