Armin Kühnemann

Learn More
Many functional programs with accumulating parameters are contained in the class of macro tree transducers. We present a program transformation technique that can be used to solve the efficiency problems due to creation and consumption of intermediate data structures in compositions of such functions, where classical deforestation techniques fail. In order(More)
Top-down tree transducers with regular look-ahead are introduced. It is shown how these can be decomposed and composed~ and how this leads to closure properties of surface sets and tree transformation languages. Particular attention is paid to deterministic tree transducers. Introduction. The top-down finite state tree transformations discussed in, for(More)
We compare transformations for the elimination of intermediate results in rst-order functional programs. We choose the well known deforestation technique of Wadler and composition techniques from the theory of tree transducers, of which the implementation of functional programs yet does not take advantage. We identify syntactic classes of function(More)
The concept of attributed tree transducer is a formal model for studying properties of attribute grammars. In this paper, for output languages of noncircular, producing, and visiting attributed tree transducers, we i n troduce and prove a pumping lemma. We apply this pumping lemma to gain two results: (1) there is no noncircular, producing, and visiting(More)
We study the problem to transform functional programs, which intensively use append functions (like inefficient list reversal), into programs, which use accumulating parameters instead (like efficient list reversal). We give an (automatic) transformation algorithm for our problem and identify a class of functional programs, namely restricted 2-modular tree(More)