Storage allocation for attribute evaluators using stacks and queues

  • Rieks op den Akker
  • Erik Sluiman
Conference paper
Part of the Lecture Notes in Computer Science book series (LNCS, volume 545)


A storage allocation technique for visit-oriented evaluators of attribute grammars is presented. The method proposed extends previous research in this area in two ways. Instead of considering global storage allocation for all instances of an attribute, the allocation of instances of occurrences of attributes in a production rule is considered. This refinement results in an improvement of space optimization techniques. Moreover, not only stacks and global variables but also more general linear data structures, notably queues, are considered for storing attribute instances. As a result of this general approach, necessary and sufficient conditions are given which determine whether a given simple multi-visit evaluator can allocate the instances of an applied occurrence using global variables, stacks, and queues. These conditions can be checked in polynomial time.


Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.


  1. [1]
    Deransart, P., Jourdan, M., Lorho, B.: Attribute grammars. Lect. Notes Comput. Sci. 323. Berlin, Heidelberg, New York, Springer, 1988.Google Scholar
  2. [2]
    Engelfriet, J. and Filé, G.: Simple multi-visit attribute grammars, Journ. Comput. System Sci. 24 (1982), 283–314CrossRefGoogle Scholar
  3. [3]
    Engelfriet, J. and De Jong, W.: Attribute storage optimization by stacks, Acta Informatica, 27 (1990), 567–581MathSciNetGoogle Scholar
  4. [4]
    Julié, C. and Parigot, D.: Space optimization in the FNC-2 attribute grammar system. In: Attribute grammars and their applications, Lect. Notes Comput. Sci. 461, (1990), 29–45Google Scholar
  5. [5]
    Kastens, U.: Ordered attribute grammars, Acta Informatica 13 (1980), 229–256CrossRefGoogle Scholar
  6. [6]
    Kastens, U.: Lifetime analysis for attributes, Acta Informatica 24 (1987), 633–652CrossRefGoogle Scholar
  7. [7]
    Knuth, D.E.: Semantics of context-free languages, Mathematical Systems Theory 2 (1968), 127–145. Correction in: Mathematical Systems Theory 5 (1971), 95–96CrossRefGoogle Scholar
  8. [8]
    Op den Akker, H.J.A. and Sluiman, F.J.: Linear Data Structures for Storage Allocation in Attribute Evaluators, INF-91-14, Twente University, Enschede, The Netherlands, 1991Google Scholar

Copyright information

© Springer-Verlag Berlin Heidelberg 1991

Authors and Affiliations

  • Rieks op den Akker
    • 1
  • Erik Sluiman
    • 1
  1. 1.Department of Computer ScienceUniversity of TwenteAE EnschedeThe Netherlands

Personalised recommendations