skip to main content
10.1145/567532.567544acmconferencesArticle/Chapter ViewAbstractPublication PagespoplConference Proceedingsconference-collections
Article
Free Access

Incremental evaluation for attribute grammars with application to syntax-directed editors

Published:26 January 1981Publication History

ABSTRACT

A syntax-directed editor is a tool for structured program development. Such an editor can enforce syntactic correctness incrementally by restricting editing operations to legitimate modifications of the program's context-free derivation tree. However, not all language features can be described by the context-free formalism. To build editors that enforce non-context-free correctness, a more powerful specification technique is needed. In this paper we discuss the advantages of attribute grammars as a specification technique for a syntax-directed editing system. We also present an efficient algorithm for incrementally evaluating attributes as a program tree is derived.

References

  1. 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, 3 (0ctober 1978), 245-272.Google ScholarGoogle ScholarDigital LibraryDigital Library
  2. Bochmann, G. V. Semantic evaluation from left to right. CACM 19, 2 (February 1976), 55-62. Google ScholarGoogle ScholarDigital LibraryDigital Library
  3. Cohen, R. and Harry, E. Automatic generation of near-optimal linear-time translators for non-circular attribute grammar. Conference Record of the Sixth ACM Symposium on Principles of Programming Languages, January 1979, 121-134. Google ScholarGoogle ScholarDigital LibraryDigital Library
  4. Donzeau-Gouge, V., Huet, G., Kahn, G., Lang B., and Levy, J. J. A structure-oriented program editor. Technical Report, IRIA-LABORIA, France 1975.Google ScholarGoogle Scholar
  5. Donzeau-Gouge, V., Huet, G., Kahn, G., and Lang B. Programming environments based on structured editors: the MENTOR experience. Technical Report, INRIA, France, May 1980.Google ScholarGoogle Scholar
  6. Fang, I. FOLDS, a declarative formal language definition system. Tech. Report No. STAN-CS-72-329, Computer Science Dept., Stanford University, December 1972.Google ScholarGoogle ScholarDigital LibraryDigital Library
  7. Farrow, R. W. Attributed grammar models for data flow analysis. Ph.D. Thesis, Rice University, Houston, Texas, May 1977. Google ScholarGoogle ScholarDigital LibraryDigital Library
  8. Hansen, W. Creation of hierarchic text with a computer display. Ph.D Thesis, Computer Science Dept., Stanford University, June 1971. Google ScholarGoogle ScholarDigital LibraryDigital Library
  9. Jazayeri, M. On attribute grammars and the semantic specification of programming languages. Ph.D. Thesis, Comp. and Info. Sci. Dept., Case Western Reserve University, 1974. Google ScholarGoogle ScholarDigital LibraryDigital Library
  10. Kennedy, K. and Warren, S. K. Automatic generation of efficient evaluators for attribute grammars. Conference Record of the Third ACM Symposium on Principles of Programming Languages, January 1976, 32-49. Google ScholarGoogle ScholarDigital LibraryDigital Library
  11. Kennedy, K. and Ramanathan, J. A deterministic attribute grammar evaluator based on dynamic sequencing. ACM Trans. on Prog. Lang. and Sys. 1, 1 (July 1979) 142-160. Google ScholarGoogle ScholarDigital LibraryDigital Library
  12. Knuth, D. E. Semantics of context free languages. Math. Systems Theory J. 2, 2 (1968), 127-145.Google ScholarGoogle ScholarCross RefCross Ref
  13. Lewis, P. M., Rozenkranz, D. J., and Stearns, R. E. Attributed translations. J. of Comp. and Systems Sciences 9, 3 (December 1974), 279-307.Google ScholarGoogle ScholarDigital LibraryDigital Library
  14. Mikelsons, M. and Wegman, M. N. PDE1L: The PL1L program development environment principles of operation. Research report RC8513, IBM Watson Research Center, Yorktown Heights, November 1980.Google ScholarGoogle Scholar
  15. Reps, T. The Synthesizer Editor Generator. In preparation.Google ScholarGoogle Scholar
  16. Skedzeleski, S. K. Definition and use of attribute reevaluation in attributed grammars. Technical Report 340, Computer Sciences Department, University of Wisconsin-Madison, October 1978.Google ScholarGoogle Scholar
  17. Teitelbaum, T. The Cornell Program Synthesizer: a microcomputer implementation of PL/CS. Tech. Report No. TR79-370, Dept. Computer Science, Cornell University, June 1979. Google ScholarGoogle ScholarDigital LibraryDigital Library
  18. Teitelbaum, T. The Cornell Program Synthesizer: a tutorial introduction. Tech. Report No. TR79-381, Dept. Computer Science, Cornell University, July 1979, Revised June 1980.Google ScholarGoogle Scholar
  19. Teitelbaum, T. and Reps, T. The Cornell Program Synthesizer: a syntax-directed programming environment. Tech. Report No. TR80-421, Dept. Computer Science, Cornell University, May 1980.Google ScholarGoogle Scholar
  20. Warren, S. K. The efficient evaluation of attribute grammars. M. A. Thesis, Rice University, Houston, Texas, April 1975.Google ScholarGoogle Scholar
  21. Warren, S. K. The coroutine model of attribute grammar evaluation. Ph.D. Thesis, Rice University, Houston, Texas, April 1976. Google ScholarGoogle ScholarDigital LibraryDigital Library
  22. Wegman, M. N. Parsing for structural editors. Conference Record of the Twenty-first annual Symposium on Foundations of Computer Science, October 1980, 320-327.Google ScholarGoogle ScholarDigital LibraryDigital Library
  1. Incremental evaluation for attribute grammars with application to syntax-directed editors

    Recommendations

    Comments

    Login options

    Check if you have access through your login credentials or your institution to get full access on this article.

    Sign in
    • Published in

      cover image ACM Conferences
      POPL '81: Proceedings of the 8th ACM SIGPLAN-SIGACT symposium on Principles of programming languages
      January 1981
      230 pages
      ISBN:089791029X
      DOI:10.1145/567532

      Copyright © 1981 ACM

      Permission to make digital or hard copies of all or part of this work for personal or classroom use is granted without fee provided that copies are not made or distributed for profit or commercial advantage and that copies bear this notice and the full citation on the first page. Copyrights for components of this work owned by others than ACM must be honored. Abstracting with credit is permitted. To copy otherwise, or republish, to post on servers or to redistribute to lists, requires prior specific permission and/or a fee. Request permissions from [email protected]

      Publisher

      Association for Computing Machinery

      New York, NY, United States

      Publication History

      • Published: 26 January 1981

      Permissions

      Request permissions about this article.

      Request Permissions

      Check for updates

      Qualifiers

      • Article

      Acceptance Rates

      POPL '81 Paper Acceptance Rate24of121submissions,20%Overall Acceptance Rate824of4,130submissions,20%

      Upcoming Conference

      POPL '25

    PDF Format

    View or Download as a PDF file.

    PDF

    eReader

    View online with eReader.

    eReader