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 these pieces can be composed to an attributed tree transducer using a composition result for attribute grammars. The same construction can be used to compose the attributed tree transducers, which represent the initial function definitions.
Access this chapter
Tax calculation will be finalised at checkout
Purchases are for personal use only
Preview
Unable to display preview. Download preview PDF.
Similar content being viewed by others
References
Correnson, L., Duris, E., Parigot, D., Roussel, G.: Symbolic composition. Technical Report 3348, INRIA, France (1998)
Courcelle, B., Franchi-Zannettacci, P.: Attribute grammars and recursive program schemes. Theoret. Comput. Sci. 17, 163–191, 235–257 (1982)
Duris, E., Parigot, D., Roussel, G., Jourdan, M.: Attribute grammars and folds: generic control operators. Technical Report 2957, INRIA, France (1996)
Engelfriet, J.: Some open questions and recent results on tree transducers and tree languages. In: Book, R.V. (ed.) Formal language theory; perspectives and open problems, pp. 241–286. Academic Press, New York (1980)
Engelfriet, J.: Tree transducers and syntax directed semantics. Technical Report Memorandum 363, Technische Hogeschool Twente (1981)
Engelfriet, J., Vogler, H.: Macro tree transducers. J. Comp. Syst. Sci. 31, 71–145 (1985)
Fülöp, Z.: On attributed tree transducers. Acta Cybernetica 5, 261–279 (1981)
Ganzinger, H.: Increasing modularity and language-independency in automatically generated compilers. Science of Computer Programming 3, 223–278 (1983)
Ganzinger, H., Giegerich, R.: Attribute coupled grammars. Symposium on Compiler Construction. In: SIGPLAN Notices, vol. 19(6), pp. 157–170 (1984)
Giegerich, R.: Composition and evaluation of attribute coupled grammars. Acta Informatica 25, 355–423 (1988)
Johnsson, T.: Attribute grammars as a functional programming paradigm. In: Kahn, G. (ed.) FPCA 1987. LNCS, vol. 274, pp. 154–173. Springer, Heidelberg (1987)
Knuth, D.E.: Semantics of context–free languages. Math. Syst. Th. 2, 127–145 (1968) Corrections in Math. Syst. Th. 5, 95–96 (1971)
Kühnemann, A.: Berechnungsstärken von Teilklassen primitiv-rekursiver Programmschemata. PhD thesis, Technical Univ. of Dresden, Shaker Verlag (1997)
Kühnemann, A., Vogler, H.: Synthesized and inherited functions - a new computational model for syntax-directed semantics. Acta Informatica 31, 431–477 (1994)
Rounds, W.C.: Mappings and grammars on trees. Math. Syst.Th. 4, 257–287 (1970)
Seidl, H., Sørensen, M.H.: Constraints to stop higher-order deforestation. In: POPL 1997, Paris, pp. 400–413. ACM Press, New York (1997)
Thatcher, J.W.: Generalized2 sequential machine maps. J. Comp. Syst. Sci. 4, 339–367 (1970)
Wadler, P.: Deforestation: Transforming programs to eliminate trees. Theor. Comp. Sci. 73, 231–248 (1990)
Author information
Authors and Affiliations
Editor information
Editors and Affiliations
Rights and permissions
Copyright information
© 1998 Springer-Verlag Berlin Heidelberg
About this paper
Cite this paper
Kühnemann, A. (1998). Benefits of Tree Transducers for Optimizing Functional Programs. In: Arvind, V., Ramanujam, S. (eds) Foundations of Software Technology and Theoretical Computer Science. FSTTCS 1998. Lecture Notes in Computer Science, vol 1530. Springer, Berlin, Heidelberg. https://doi.org/10.1007/978-3-540-49382-2_13
Download citation
DOI: https://doi.org/10.1007/978-3-540-49382-2_13
Publisher Name: Springer, Berlin, Heidelberg
Print ISBN: 978-3-540-65384-4
Online ISBN: 978-3-540-49382-2
eBook Packages: Springer Book Archive