論文

査読有り
2012年5月

Manipulating accumulative functions by swapping call-time and return-time computations

JOURNAL OF FUNCTIONAL PROGRAMMING
  • Akimasa Morihata
  • ,
  • Kazuhiko Kakehi
  • ,
  • Zhenjiang Hu
  • ,
  • Masato Takeichi

22
3
開始ページ
275
終了ページ
299
記述言語
英語
掲載種別
研究論文(学術雑誌)
DOI
10.1017/S0956796812000111
出版者・発行元
CAMBRIDGE UNIV PRESS

Functional languages are suitable for transformational developments of programs. However, accumulative functions, or in particular tail-recursive functions, are known to be less suitable for manipulation. In this paper, we propose a program transformation named "IO swapping" that swaps call-time and return-time computations. It moves computations in accumulative parameters to results and thereby enables interesting transformations. We demonstrate effectiveness of IO swapping by several applications: deforestation, higher order removal, program inversion, and manipulation of circular programs.

リンク情報
DOI
https://doi.org/10.1017/S0956796812000111
DBLP
https://dblp.uni-trier.de/rec/journals/jfp/MorihataKHT12
Web of Science
https://gateway.webofknowledge.com/gateway/Gateway.cgi?GWVersion=2&SrcAuth=JSTA_CEL&SrcApp=J_Gate_JST&DestLinkType=FullRecord&KeyUT=WOS:000306533300003&DestApp=WOS_CPL
URL
http://dblp.uni-trier.de/db/journals/jfp/jfp22.html#journals/jfp/MorihataKHT12
ID情報
  • DOI : 10.1017/S0956796812000111
  • ISSN : 0956-7968
  • eISSN : 1469-7653
  • DBLP ID : journals/jfp/MorihataKHT12
  • Web of Science ID : WOS:000306533300003

エクスポート
BibTeX RIS