Generating mutually recursive definitions

Jeremy Yallop, Oleg Kiselyov

研究成果: Conference contribution

4 被引用数 (Scopus)

抄録

Many functional programs - state machines [Krishnamurthi 2006], top-down and bottom-up parsers [Hinze and Paterson 2003; Hutton and Meijer 1996], evaluators [Abelson et al. 1984], GUI initialization graphs [Syme 2006], &c. - are conveniently expressed as groups of mutually recursive bindings. One therefore expects program generators, such as those written in MetaOCaml, to be able to build programs with mutual recursion. Unfortunately, currently MetaOCaml can only build recursive groups whose size is hard-coded in the generating program. The general case requires something other than quotation, and seemingly weakens static guarantees on the resulting code. We describe the challenges and propose a new language construct for assuredly generating binding groups of arbitrary size - illustrating with a collection of examples for mutual, n-ary, heterogeneous, value and polymorphic recursion.

本文言語English
ホスト出版物のタイトルPEPM 2019 - Proceedings of the 2019 ACM SIGPLAN Workshop on Partial Evaluation and Program Manipulation, Co-located with POPL 2019
編集者Manuel Hermenegildo, Atsushi Igarashi
出版社Association for Computing Machinery, Inc
ページ75-81
ページ数7
ISBN(電子版)9781450362269
DOI
出版ステータスPublished - 2019 1月 14
イベント2019 ACM SIGPLAN Workshop on Partial Evaluation and Program Manipulation, PEPM 2019, in affiliation with the annual Symposium on Principles of Programming Languages, POPL 2019 - Cascais, Portugal
継続期間: 2019 1月 142019 1月 15

出版物シリーズ

名前PEPM 2019 - Proceedings of the 2019 ACM SIGPLAN Workshop on Partial Evaluation and Program Manipulation, Co-located with POPL 2019

Conference

Conference2019 ACM SIGPLAN Workshop on Partial Evaluation and Program Manipulation, PEPM 2019, in affiliation with the annual Symposium on Principles of Programming Languages, POPL 2019
国/地域Portugal
CityCascais
Period19/1/1419/1/15

ASJC Scopus subject areas

  • コンピュータ グラフィックスおよびコンピュータ支援設計
  • コンピュータ ビジョンおよびパターン認識
  • ソフトウェア

フィンガープリント

「Generating mutually recursive definitions」の研究トピックを掘り下げます。これらがまとまってユニークなフィンガープリントを構成します。

引用スタイル