## Benefits of Tree Transducers for Optimizing Functional Programs (1998)

### Cached

### Download Links

- [www.orchid.inf.tu-dresden.de]
- [www.orchid.inf.tu-dresden.de]
- DBLP

### Other Repositories/Bibliography

Venue: | In FST & TCS'98, Chennai, India, Proceedings, volume 1530 of LNCS |

Citations: | 31 - 6 self |

### BibTeX

@INPROCEEDINGS{Kühnemann98benefitsof,

author = {Armin Kühnemann},

title = {Benefits of Tree Transducers for Optimizing Functional Programs},

booktitle = {In FST & TCS'98, Chennai, India, Proceedings, volume 1530 of LNCS},

year = {1998},

pages = {146--157},

publisher = {Springer-Verlag}

}

### Years of Citing Articles

### OpenURL

### Abstract

We present a technique to prevent the construction of intermediate data structures in functional programs, which is based on results from the theory of tree transducers. We first decompose function definitions, which correspond to macro tree transducers, into smaller pieces. Under certain restrictions...

### Citations

447 |
Semantics of Context-Free Languages
- Knuth
- 1968
(Show Context)
Citation Context ...treeless first-order programs, where essentially every occurrence of a function in the right-hand side of an equation is only applied to variables. Attribute grammars have been introduced by Knuth in =-=[12]-=- to assign meaning to programs which are produced by context-free grammars. Johnsson even considers them as functional programming paradigms (cf. [11]). At least they suffer from the same problems, if... |

400 | Deforestation: Transforming programs to eliminate trees
- Wadler
- 1990
(Show Context)
Citation Context ...ause inefficiencies. For instance, Wadler has tackled this problem by inventing the deforestation technique for transforming programs using intermediate data structures into programs that do not (cf. =-=[18]-=-). The original transformation terminates for treeless first-order programs, where essentially every occurrence of a function in the right-hand side of an equation is only applied to variables. Attrib... |

119 |
Mappings and grammars on trees
- Rounds
- 1970
(Show Context)
Citation Context ...ted over ranked alphabets. Fulop has shown that the class of atts is not closed under composition, but closed under right-composition with the class of top-down tree transducers (for short tdtts; cf. =-=[15, 17]-=-). Tdtts can be seen as atts without inherited attributes and thus as models for S-attribute grammars. In this paper we present a technique to prevent intermediate data structures of primitive-recursi... |

108 |
Macro Tree Transducers
- Engelfriet, Vogler
- 1985
(Show Context)
Citation Context ...tions, which is based on the composition result for attribute grammars. For this purpose we consider macro tree transducers (for short mtts), which have been introduced by Engelfriet in [4] (also cf. =-=[2, 6]-=-). Mtts extend the scheme of primitive recursion, additionally allowing simultaneous definitions of functions and nesting of trees in parameter positions. In order to generalize our results, we actual... |

74 | Attribute grammars as a functional programming paradigm
- Johnsson
- 1987
(Show Context)
Citation Context ...tribute grammars have been introduced by Knuth in [12] to assign meaning to programs which are produced by context-free grammars. Johnsson even considers them as functional programming paradigms (cf. =-=[11]-=-). At least they suffer from the same problems, if they are used in a compositional programming style. Ganzinger has shown in [8] that restricted attribute grammars, which are called language morphism... |

56 |
Attribute Grammars and Recursive Program Schemes
- Courcelle, Franchi-Zannettacci
- 1982
(Show Context)
Citation Context ...tions, which is based on the composition result for attribute grammars. For this purpose we consider macro tree transducers (for short mtts), which have been introduced by Engelfriet in [4] (also cf. =-=[2, 6]-=-). Mtts extend the scheme of primitive recursion, additionally allowing simultaneous definitions of functions and nesting of trees in parameter positions. In order to generalize our results, we actual... |

50 |
Composition and evaluation of attribute coupled grammars
- Giegerich
- 1988
(Show Context)
Citation Context ...cted attribute grammars, which are called language morphisms, are closed under composition. Ganzinger and Giegerich have presented this composition in the framework of attribute coupled grammars (cf. =-=[9, 10]-=-). The imposed restriction is called syntactic single use requirement, which essentially means that every attribute value in a tree may be used at most once to calculate other attribute values. Attrib... |

49 |
On attributed tree transducers
- Fulop
- 1981
(Show Context)
Citation Context ...2 g;f\Pi 1 ;\Pi 3 g) z z1 z2 z3 Fig. 2. Substitution principle for mx = 3 and SUB (f\Pi 2 g;f\Pi 1 ;\Pi 3 g) . 6 Composition Fulop has shown that generally two atts cannot be composed to one att (cf. =-=[7]-=-). Two restrictions are known, under which two atts M 1 and M 2 can be composed to an att M : The construction in [7] requires that M 2 is a tdtt. It takes the cartesian product of the attribute sets ... |

49 |
Attribute coupled grammars
- Ganzinger, Giegerich
- 1984
(Show Context)
Citation Context ...cted attribute grammars, which are called language morphisms, are closed under composition. Ganzinger and Giegerich have presented this composition in the framework of attribute coupled grammars (cf. =-=[9, 10]-=-). The imposed restriction is called syntactic single use requirement, which essentially means that every attribute value in a tree may be used at most once to calculate other attribute values. Attrib... |

46 |
Some open questions and recent results on tree transducers and tree languages
- Engelfriet
- 1975
(Show Context)
Citation Context ...sive tree functions, which is based on the composition result for attribute grammars. For this purpose we consider macro tree transducers (for short mtts), which have been introduced by Engelfriet in =-=[4]-=- (also cf. [2, 6]). Mtts extend the scheme of primitive recursion, additionally allowing simultaneous definitions of functions and nesting of trees in parameter positions. In order to generalize our r... |

39 |
Generalized sequential machine maps
- Thatcher
- 1970
(Show Context)
Citation Context ...ted over ranked alphabets. Fulop has shown that the class of atts is not closed under composition, but closed under right-composition with the class of top-down tree transducers (for short tdtts; cf. =-=[15, 17]-=-). Tdtts can be seen as atts without inherited attributes and thus as models for S-attribute grammars. In this paper we present a technique to prevent intermediate data structures of primitive-recursi... |

25 |
Increasing modularity and language-independency in automatically generated compilers
- Ganzinger
- 1983
(Show Context)
Citation Context ...Johnsson even considers them as functional programming paradigms (cf. [11]). At least they suffer from the same problems, if they are used in a compositional programming style. Ganzinger has shown in =-=[8]-=- that restricted attribute grammars, which are called language morphisms, are closed under composition. Ganzinger and Giegerich have presented this composition in the framework of attribute coupled gr... |

20 |
Berechnungsstarken von Teilklassen primitiv-rekursiver Programmschemata
- Kuhnemann
- 1997
(Show Context)
Citation Context ... [14] we have decomposed matts into atts and yield functions, which perform substitutions of parameter values. According to Engelfriet (cf. [5]), also yield functions can also be realized by atts. In =-=[13]-=- we have shown that the decomposition carries over the weakly single-use restriction from an matt to the first att. If the matt is noncopying, then the second att is single-use. Thus, under both restr... |

20 |
Synthesized and inherited functions — a new computational model for syntax–directed semantics
- Kühnemann, Vogler
(Show Context)
Citation Context ...ctional program, which does not use an intermediate result! 7 Theoretical Consequences The first result shows the limited power of weakly single-use matts. Note that we have proved MAT = AT ffi AT in =-=[14]-=- for the unrestricted class of matts. Theorem 7.1 MAT wsu ` AT Proof. MAT wsu = AT su ffi YIELD ` AT su ffi AT = AT by Theorem 4.3, Lemma 5.1, and Theorem 6.1. 2 We do not know yet, whether MAT wsu is... |

15 |
Tree transducers and syntax-directed semantics
- Engelfriet
- 1981
(Show Context)
Citation Context ...se restriction for atts is called single-use restriction. In [14] we have decomposed matts into atts and yield functions, which perform substitutions of parameter values. According to Engelfriet (cf. =-=[5]-=-), also yield functions can also be realized by atts. In [13] we have shown that the decomposition carries over the weakly single-use restriction from an matt to the first att. If the matt is noncopyi... |

12 | Constraints to Stop Higher-Order Deforestation
- Seidl, Sørensen
- 1997
(Show Context)
Citation Context ...ompositions of functions can be handled, which deforestation does not optimize. An example which demonstrates this is the twofold reversal of monadic trees, where the accumulating parameter (cf. e.g. =-=[16]-=-) causes the trouble in deforestation. In [13] we have presented another example, in which three restricted mtts for the translation of binary numbers (cf. also [12]) into programs for an abstract mac... |

9 | Attribute grammars and folds: Generic control operators. Rapport de recherche 2957 - Duris, Parigot, et al. - 1996 |

7 | Symbolic composition
- Correnson, Duris, et al.
- 1998
(Show Context)
Citation Context ...esented another example, in which three restricted mtts for the translation of binary numbers (cf. also [12]) into programs for an abstract machine were composed to one att. Correnson et al. apply in =-=[1]-=- the same strategy as we did in [13]. They perform the transformation of functions into attribute grammars directly without decomposition and composition steps. But in contrast to our work, they do no... |