Abstract
Stack-attributed tree transducers extend attributed tree transducers with a pushdown stack device for attribute values, which make them strictly more powerful. This paper presents an algorithm for the composition of stack-attributed tree transducers with attributed tree transducers. The algorithm is an extension of the existing method to compose attributed tree transducers. It leads to some natural closure properties of the corresponding classes of tree transformations.
Similar content being viewed by others
References
Aho, A.V., Ullman, J.D.: The Theory of Parsing, Translation and Compiling. Prentice-Hall, Englewood Cliffs (1973)
Aho, A.V., Sethi, R., Ullman, J.D.: Compilers—Principles, Techniques, and Tools. Addison-Wesley, Reading (1986)
Correnson, L., Duris, E., Parigot, D., Roussel, G.: Declarative program transformation: A deforestation case-study. In: Proceedings of Principles and Practice of Declarative Programming. LNCS, vol. 1702, pp. 360–377. Springer, New York (1999)
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. Academic, New York (1980)
Engelfriet, J., Vogler, H.: Macro tree transducers. J. Comput. Syst. Sci. 31(1), 71–146 (1985)
Engelfriet, J., Vogler, H.: High level tree transducers and iterated pushdown tree transducers. Acta Inf. 26(1–2), 131–192 (1988)
Extensible markup language (XML). http://www.w3c.org/XML/
Farrow, R.: Generating a production compiler from an attribute grammar. IEEE Softw. 1(4), 77–93 (1984)
Fülöp, Z.: On attributed tree transducers. Acta Cybern. 5, 261–280 (1981)
Fülöp, Z., Vogler, H.: Syntax-Directed Semantics—Formal Models based on Tree Transducers. Monographs in Theoretical Computer Science, An EATCS Series. Springer, New York (1998)
Ganzinger, H.: Increasing modularity and language-independency in automatically generated compilers. Sci. Comput. Program. 3(3), 223–278 (1983)
Ganzinger, H., Giegerich, R.: Attribute coupled grammars. In: Proceedings of the ACM SIGPLAN ’84 Symposium on Compiler Construction. SIGPLAN Notices, vol. 19(6), pp. 157–170 (June 1984)
Giegerich, R.: Composition and evaluation of attribute coupled grammars. Acta Inf. 25(4), 355–423 (1988)
Horwitz, S., Teitelbaum, T.: Relations and attributes: a symbiotic basis for editing environments. In: ACM SIGPLAN ’85 Symp. on Language Issues in Programming Environments, pp. 93–106. ACM Press, Seattle (1985)
Johnsson, T.: Attribute grammars as a functional programming paradigm. In: the Proceedings of the Conference on Functional Programming Languages and Computer Architecture. LNCS, vol. 274, pp. 154–173. Springer, New York (1987)
Kastens, U., Hutt, B., Zimmermann, E.: GAG: A Practical Compiler Generator. LNCS vol. 141. Springer, New York (1982)
Knuth, D.E.: Semantics of context-free languages. Math. Syst. Theory 2(2), 127–145 (1968)
Knuth, D.E.: Correction: Semantics of context-free languages. Math. Syst. Theory 5(1), 95–96 (1971)
Kühnemann, A.: Berechnungsstärken von Teilklassen primitiv-rekursiver Programmschemata. PhD thesis, Technical University of Dresden (1997)
Kühnemann, A.: Benefits of tree transducers for optimizing functional programs. In: Proceedings of Foundations of Software Technology and Theoretical Computer Science. LNCS, vol. 1530, pp. 146–157. Springer, New York (1998)
Kühnemann, A., Vogler, H.: Synthesized and inherited functions. A new computational model for syntax-directed semantics. Acta Inf. 31(5), 431–477 (1994)
Nakano, K.: An implementation scheme for XML transformation languages through derivation of stream processors. In: Proceedings of the 2nd Asian Symposium on Programming Languages and Systems. LNCS, vol. 3302, pp. 74–90. Springer, New York (2004)
Nakano, K., Nishimura, S.: Deriving event-based document transformers from tree-based specifications. In: Proceedings of the 1st Workshop on Language Descriptions, Tools and Applications. Electronic Notes in Theoretical Computer Science, vol. 44(2). Elsevier, Amsterdam (2001)
Rechenberg, P., Moessenboeck, H.: A Compiler Generator for Microcomputers. Prentice-Hall, Englewood Cliffs (1989)
Reps, T.: Generating Language-based Environments. MIT Press, Cambridge (1984)
Rounds, W.C.: Mappings and grammars on trees. Math. Syst. Theory 4(3), 257–287 (1970)
Voigtländer, J., Kühnemann, A.: Composition of functions with accumulating parameters. J. Funct. Program. 14, 317–363 (2004)
XML path language (XPath). http://www.w3c.org/TR/xpath
XSL transformations (XSLT). http://www.w3c.org/TR/xslt
Author information
Authors and Affiliations
Corresponding author
Rights and permissions
About this article
Cite this article
Nakano, K. Composing Stack-Attributed Tree Transducers. Theory Comput Syst 44, 1–38 (2009). https://doi.org/10.1007/s00224-008-9125-y
Published:
Issue Date:
DOI: https://doi.org/10.1007/s00224-008-9125-y