CiteULike is a free online bibliography manager. Register and you can start organising your references online.

Using Circular Programs to Deforest in Accumulating Parameters Export

Higher-Order and Symbolic Computation, Vol. 17, No. 1 - 2. (March 2004), pp. 129-163.

Citation Format

[Posts]

View FullText article


voigt's tags for this article

accumulating-parameters circular-programs deforestation functional-programming haskell laziness lazy-evaluation multiple-traversals optimization program-transformation tree-transducers tupling

X Reviews [Write a review of this article]

X Find related articles from these CiteULike users

X Find related articles with these CiteULike tags

X Posting History

X Abstract

This paper presents a functional program transformation that removes intermediate data structures in compositions of two members of a class of recursive functions with accumulating parameters. To avoid multiple traversals of the input data structure, the composition algorithm produces circular programs that make essential use of lazy evaluation and local recursion. The resulting programs are simplified using a post-processing phase sketched in the paper. The presented transformation, called lazy composition, is compared with related transformation techniques both on a qualitative level and based on runtime measurements. An alternative use of higher-orderedness instead of circularity is also briefly explored.


X BibTeX record

X RIS record


Privacy Statement | Terms & Conditions
CiteULike organises scholarly (or academic) papers or literature and provides bibliographic (which means it makes bibliographies) for universities and higher education establishments. It helps undergraduates and postgraduates. People studying for PhDs or in postdoctoral (postdoc) positions. The service is similar in scope to EndNote or RefWorks or any other reference manager like BibTeX, but it is a social bookmarking service for scientists and humanities researchers.