Abstract
This paper surveys the main evaluation strategies for non-circular attribute grammars, i.e., passes, sweeps, visits and plans. Attention is also focused on the iteration of evaluation passes for circular attribute grammars.
This is a preview of subscription content, log in via an institution.
Preview
Unable to display preview. Download preview PDF.
References
Aho, A.V., Hopcroft, J.E. and Ullman, J.D.: The design and analysis of computer algorithms. Addison Wesley (1974).
Op den Akker, H.J.A., Melichar, B, Tarhio, J.: Attribute evaluation and parsing, elsewhere in these proceedings.
Alblas, H.: A characterization of attribute evaluation in passes. Acta Informatica 16 (1981), pp. 427–464.
Alblas, H.: Finding minimal pass sequences for attribute grammars. SIAM Journ. on Computing 14 (1985), pp. 889–914.
Alblas, H.: Iteration of transformation passes over attributed program trees. Acta Informatica 27 (1989), pp. 1–40.
Alblas, H.: Pass-oriented attribute evaluation and attributed tree transformations, Ph.D. Thesis, University of Twente (1987).
Alblas, H.: Introduction to Attribute Grammars, elsewhere in these proceedings.
Babich, W.A. and Jazayeri, M.: The method of attributes for data flow analysis, Part I: Exhaustive analysis, Part II: Demand analysis. Acta Informatica 10 (1978), pp. 245–272.
Bochmann, G.V.: Semantic evaluation from left to right. Comm. ACM 19 (1976), pp. 55–62.
Cohen, R. and Harry, E.: Automatic generation of near-optimal linear-time translators for noncircular attribute grammars. In: Proc. 6th ACM Symposium on Principles of Programming Languages (1979), pp. 121–134.
Courcelle, B. and Franchi-Zannettacci, P.: Attribute grammars and recursive program schemes, Theoretical Computer Science 17 (1982), pp. 163–191 and 235–257.
Deransart, P., Jourdan, M. and Lorho, B.: Attribute grammars, Definitions, Systems and Bibliography. Lecture Notes in Computer Science 323, Springer (1988).
Engelfriet, J.: Attribute grammars: Attribute evaluation methods. In: Methods and Tools for Compiler Construction (B. Lorho, ed.). Cambridge University Press (1984), pp. 103–138.
Engelfriet, J. and Filè, G.: Passes and paths of attribute grammars. Information and Control 49 (1981), pp. 125–169.
Engelfriet, J. and Filè, G.: The formal power of one-visit attribute grammars. Acta Informatica 16 (1981), pp. 275–302.
Engelfriet, J. and Filè, G.: Simple multi-visit attribute grammars. Journ. of Computer and System Sciences 24 (1982), pp. 283–314.
Engelfriet, J. and Filè, G.: Passes, sweeps and visits in attribute grammars. Memorandum INF-82-6, Dept. of Computer Science, University of Twente (1982).
Engelfriet, J. and Filè, G.: Passes, sweeps and visits in attribute grammars. In: Proc. 8th ICALP, Lecture Notes in Computer Science 115 (1981), Springer, pp. 193–207.
Farrow, R.: Experience with an attribute grammar based compiler. In: Proc. 9th ACM Symposium on Principles of Programming Languages (1982), pp. 95–107.
Farrow, R.: Sub-protocol-evaluators for attribute grammars. In: Proc. SIGPLAN '84 Symposium on Compiler Construction (1984), pp. 70–80.
Farrow, R.: Automatic generation of fixed-point-finding evaluators for circular, but well-defined, attribute grammars. In: Proc. SIGPLAN '86 Symposium on Compiler Construction (1986), pp. 85–98.
Filè, G.: Theory of attribute grammars. Ph.D. Thesis, University of Twente (1983).
Filè, G.: Classical and incremental attribute evaluation by means of recursive procedures. Theoretical Computer Science 53 (1987), pp. 25–65.
Ganzinger, H.: MUG1 Manual. Bericht 7608, Institut für Informatik, Technische Universität München (1974).
Ganzinger, H., Giegerich, R., Möncke, U. and Wilhelm, R.: A truly generative semanticsdirected compiler generator. In: Proc. ACM SIGPLAN '82 Symposium on Compiler Construction (1982), pp. 172–184.
Ganzinger, H., Ripken, K. and Wilhelm, R.: Automatic generation of optimizing multipass compilers. In: IFIP '77 (B. Gilchrist, ed.), North Holland Publishing Co. (1977), pp. 535–540.
Giegerich, R. and Wilhelm, R.: Attribute evaluation. In: Le point sur la compilation, Proc. IRIA Symposium on the State and the Art and Future Trends in Compilation (1978), pp. 337–365.
Giegerich, R. and Wilhelm, R.: Counter one-pass features in one-pass compilation: a formalization using attribute grammars. Information Processing Letters 7 (1978), pp. 279–284.
Jazayeri, M. and Walter, K.G.: Alternating semantic evaluator. In: Proc. ACM 1975 Annual Conference (1975), pp. 230–234.
Jourdan, M.: Recursive evaluators for attribute grammars: an implementation. In: Methods and Tools for Compiler Construction (B. Lorho, ed.), Cambridge University Press (1984), pp. 139–164.
Jourdan, M.: Strongly non-circular attribute grammars and their recursive evaluation. In: Proc. SIGPLAN '84 Symposium on Compiler Construction (1984), pp. 81–93.
Jourdan, M., Parigot, D., Juliíe, C., Durin, O. and Le Bellec, C.: Design, implementation and evaluation of the FNC-2 attribute grammar system. In: Proc. SIGPLAN '90 Symposium on Programming Languages Design and Implementation (1990), pp. 209–222.
Kastens, U.: Ordered attributed grammars. Bericht 7/78, Institut für Informatik II, Universität Karlsruhe (1978).
Kastens, U.: Ordered attributed grammars. Acta Informatica 13 (1980), pp. 229–256.
Kastens, U.: The GAG system, A tool for compiler construction. In: Methods and Tools for Compiler Construction (B. Lorho, ed.), Cambridge University Press (1984), pp. 165–182.
Kastens, U.: LIGA: A language independent generator for attribute grammars, Bericht Nr. 63, Reihe Informatik, Universität Paderborn (1989).
Kastens, U., Hutt, B. and Zimmermann, E.: GAG, A practical compiler generator. Lecture Notes in Computer Science 141, Springer (1982).
Katayama, T.: Translation of attribute grammars into procedures. ACM Trans. on Programming Languages and Systems 6 (1984), pp. 345–369.
Kennedy, K. and Ramanathan, J.: A deterministic attribute grammar evaluator based on dynamic sequencing. ACM Trans. on Programming Languages and Systems 1 (1979), pp. 142–160.
Kennedy, K. and Warren, S.K.: Automatic generation of efficient evaluators for attribute grammars. In: Proc. 3rd ACM Symposium on Principles of Programming Languages (1976), pp. 32–49.
Knuth, D.E.: Semantics of context-free languages. Math. Systems Theory 2 (1968), pp. 127–145.
Knuth, D.E.: Semantics of context-free languages, Correction. Math. Systems Theory 5 (1971), pp. 95–96.
Koster, C.H.A.: Affix grammars. In: Algol 68 Implementation (J.E.L. Peck, ed.), North Holland Publishing Co. (1971), pp. 95–109.
Koster, C.H.A.: Using the CDL compiler-compiler. In: Compiler Construction: An Advanced Course. (F.L. Bauer and J. Eickel, eds.), Lecture Notes in Computer Science 21 (1974), Springer, pp. 366–426.
Lewis, P.M., Rosenkrantz, D.J. and Stearns, R.E.: Attributed translations. Journ. of Computer and System Sciences 9 (1974), pp. 279–307.
Räihä, K.-J.: On attribute grammars and their use in a compiler writing system. Report A-1977-4, Dept. of Computer Science, University of Helsinki (1977).
Räihä, K.-J.: Experiences with the compiler writing system HLP. In: Semantics-Directed Compiler Generation (N.D. Jones, ed.) Lecture Notes in Computer Science 94, Springer (1980), pp. 350–362.
Räihä, K.-J.: Attribute grammar design using the compiler writing system HLP. In: Methods and Tools for Compiler Construction (B. Lorho, ed.), Cambridge University Press (1984), pp. 165–182.
Räihä, K.-J. and Saarinen, M.: An optimization of the alternating semantic evaluator. Information Processing Letters 6 (1977), pp. 97–100.
Räihä, K.-J., Saarinen, M., Sarjakovski, M., Sippu, S., Soisalon-Soininen, E. and Tienari, M.: Revised Report on the compiler writing system HLP78. Report A-1983-1, Dept. of Computer Science, University of Helsinki (1983).
Räihä, K.-J., Saarinen, M., Soisalon-Soininen, E. and Tienari, M.: The compiler writing system HLP (Helsinki Language Processor). Report A-1978-2, Dept. of Computer Science, University of Helsinki (1978).
Räihä, K.-J. and Ukkonen, E.: On the optimal assignment of attributes to passes in multi-pass attribute evaluators. In: Proc. 7th ICALP (J. de Bakker and J. van Leeuwen, eds), Lecture Notes in Computer Science 85, Springer (1980), pp. 500–511.
Räihä, K.-J. and Ukkonen, E.: Minimizing the number of evaluation passes for attribute grammars. SIAM Journ. on Computing 10 (1981), pp. 772–786.
Riis Nielson, H.: Computation sequences: a way to characterize classes of attribute grammars. Acta Informatica 19 (1983), pp. 255–268.
Riis, H. and Skyum, S.: k-visit attribute grammars. Math. Systems Theory 15 (1981), pp. 17–28.
Saarinen, M.: On constructing efficient evaluators for attribute grammars, In: Proc. 5th ICALP, Lecture Notes in Computer Science 62, Springer (1978), pp. 382–397.
Watt, D.A.: The parsing problem for affix grammars. Acta Informatica 8 (1977), pp. 1–20.
Watt, D.A.: Rule splitting and attribute-directed parsing. In: Semantics-Directed Compiler Generation (N.D. Jones, ed.), Lecture Notes in Computer Science 94 (1989), Springer, pp. 363–392.
Wilhelm, R., Ripken, K., Ciesinger, H., Lahner, W. and Nollman, R.D.: Design evaluation of the compiler generating system MUG1. In: Proc. 2nd Int. Conf. on Software Engineering (1976), pp. 571–576.
Author information
Authors and Affiliations
Editor information
Rights and permissions
Copyright information
© 1991 Springer-Verlag Berlin Heidelberg
About this paper
Cite this paper
Alblas, H. (1991). Attribute evaluation methods. In: Alblas, H., Melichar, B. (eds) Attribute Grammars, Applications and Systems. SAGA School 1991. Lecture Notes in Computer Science, vol 545. Springer, Berlin, Heidelberg. https://doi.org/10.1007/3-540-54572-7_3
Download citation
DOI: https://doi.org/10.1007/3-540-54572-7_3
Published:
Publisher Name: Springer, Berlin, Heidelberg
Print ISBN: 978-3-540-54572-9
Online ISBN: 978-3-540-38490-8
eBook Packages: Springer Book Archive