Skip to main content
Log in

Global storage cells for attributes in an attribute grammar

  • Published:
Acta Informatica Aims and scope Submit manuscript

Summary

Very much space is needed to store the values of all attribute instances in an attributed tree at the corresponding nodes; for that reason “global cells” are often used to store values of attribute instances. But these global cells must contain “the right value at the right time”, and, therefore, not all evaluation sequences of attribute instances are admissible, if one uses global cells.

In this paper we will study first the problem arising during the construction of such admissible evaluation sequences for attributed trees, if no special property of an underlying ag is presumed. This will lead to a number of restrictions on the “practically allowed” use of global cells. After that we will provide a method for the construction of admissible evaluation sequences for arbitrary attribute trees of given attribute grammars, if global cells are used in the restricted sense. The proposed method is independent of special classes of attribute grammars and can be used with arbitrary evaluator generators.

This is a preview of subscription content, log in via an institution to check access.

Access this article

Price excludes VAT (USA)
Tax calculation will be finalised during checkout.

Instant access to the full article PDF.

Similar content being viewed by others

References

  1. Asbrock, B., Kastens, V., Zimmermann, E.: User Manual for the GAG. System. Univ. Karlsruhe, Fak. für Informatik, Report 15/81 (1981)

  2. Bochmann, G.V.: Semantic Evaluation from Left to Right. Commun. ACM 19, 55–62 (1976)

    Google Scholar 

  3. Cohen, R., Harry, E.: Automatic Generation of Near-Optimal Linear-Time Translators for Non-Circular Attribute Grammars. 6th ACM Symp. on POPL, pp. 121–134 (1979)

  4. Engelfriet, J., Rozenberg, G., Slutzki, G.: Tree Transducers, L-Systems and Two-Way Machines. JCSS 20, 150–202 (1980)

    Google Scholar 

  5. Engelfriet, J., Filé, G.: Passes, Sweeps and Visits. ICALP 81, 193–207 (1981)

    Google Scholar 

  6. Ganzinger, H.: On Storage Optimization for Automatically Generated Compilers. 4th GIConference on Theor. Comput. Sci. LNCS 67, 132–141 (1979)

    Google Scholar 

  7. Giegerich, R.: Introduction to the compiler generating system MUG2. TU München, TUMInfo-7913 (1979)

  8. Jazayeri, M., Pozefsky, D.: A Family of Pass-Oriented Attribute Grammar Evaluators. Univ. of North Carolina, Dept. of CS, Report TR 78-010 (1978)

  9. Jazayeri, M., Pozefsky, D.: Space Efficient Storage Management in an Attribute Grammar Evaluator. Univ. of North Carolina, Dept. of CS, Report TR 79-007 (1979)

  10. Jazayeri, M., Pozefsky, D.: A Space Improvement in the ASE. Univ. of North Caroline, Dept. of CS, Report TR 80-002 (1980)

  11. Kastens, U., Zimmermann, E.: GAG — A Generator Based on Attribute Grammars. Univ. Karlsruhe, Inst. für Informatik II, Report 14/80 (1980)

  12. Kennedy, K., Warren, S.K.: Automatic Generation of Efficient Evaluators for Attribute Grammars. 3rd ACM Symp. on POPL, pp. 32–49 (1976)

  13. Knuth, D.E.: Semantics of Context-Free Languages. Math. Syst. Theory 2, 127–145 (1968)

    Google Scholar 

  14. Knuth, D.E.: Semantics of Context-Free Languages. Math. Syst. Theory 5, 95–96 (1971)

    Google Scholar 

  15. Räihä, K.J., Saarinen, M., Soisalon-Soininen, E., Tienari, M.: The Compiler Writing System HLP. Univ. of Helsinki, Dept. of CS, Report A-1978-2 (1978)

  16. Räihä, K.J.: Dynamic Allocation of Space for Attribute Grammars. SIGPLAN Notices 14, 2638 (1979)

    Google Scholar 

  17. Räihä, K.J.: A Space Management Technique for Multi-Pass Attribute Evaluators. Univ. of Helsinki, Dept. of CS, Report A-1981-4 (1981)

  18. Riis, H., Skyum, S.: k-visit Attribute Grammars. Math. Syst. Theory 15, 17–28 (1981)

    Google Scholar 

  19. Sethi, R.: Complete Register Allocation Problems. SIAM J. Comp. 4, 226–248 (1975)

    Google Scholar 

  20. Sethi, R.: Pebbles Games for Studying Storage Sharing. TCS 19, 69–84 (1982)

    Google Scholar 

  21. Sonnenschein, M.: Generierung effizienter Compilerteile durch attributierten Grammatiken verwandte Konzepte. Diss. RWTH Aachen 1983

    Google Scholar 

  22. Grubert, U.: Entwurf und Implementierung einer dynamischen Speicherverwaltung im Rahmen eines Compiler-erzeugenden Systems. RWTH Aachen, Diplomarbeit 1984

    Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Rights and permissions

Reprints and permissions

About this article

Cite this article

Sonnenschein, M. Global storage cells for attributes in an attribute grammar. Acta Informatica 22, 397–420 (1985). https://doi.org/10.1007/BF00288775

Download citation

  • Received:

  • Issue Date:

  • DOI: https://doi.org/10.1007/BF00288775

Keywords

Navigation