A simple and efficient incremental LL(1) parsing
Incremental parsing is widely used in language-based editors and incremental compilation and interpretive environments. Reparsing of modified input strings is the most frequently performed operation in these environments and its efficiency can greatly affect the success of such environments. This paper describes the introduction of nonterminals as lookahead symbols into an LL parse table to support minimal LL reparsing. This enhancement is then used to produce an efficient incremental LL parser.
Unable to display preview. Download preview PDF.
- 1.Aho, A., Sethi, R. and Ullman, J, Compilers: Principles, Techniques, and Tools, Addison-Wesley Publishing Company, 1986.Google Scholar
- 2.Aho, A. and Ullman, J., The Theory of Parsing, Translation and Compiling, Vol. 1 and 2, Prentice-Hall, Englewood Cliffs, NJ, 1972 and 1973.Google Scholar
- 3.Aho, A. and Ullman, J, Principles of Compiler Design, Addison-Wesley Publishing Company, 1979.Google Scholar
- 4.Fischer, C. and LeBlanc, R., Crafting A Compiler The Benjamin/Cummings Publishing Company, 1988.Google Scholar
- 5.Delisle, N., Schwartz, M., and Begwani, V., “Incremental compilation in magpie”, Proceedings of the ACM SIGPLAN'84 Symposium on Compiler Construction, SIG-PLAN Notices, Vol. 19, No. 6, p122–130, 1982.Google Scholar
- 6.Grune, D. and Jacobs, C., “A Programmer-Friendly LL(1) Parser Generator”, Software-Practice and Experience, Vol. 18, No. 1, pp29–38, January 1988.Google Scholar
- 7.Holub, A., Compiler Design in C, Prentice-Hall International, 1990.Google Scholar
- 8.Jalili, F. and Gallier, J., “Building Friendly Parsers”, Proceedings of the Ninth ACM Symposium on Principles of Programming Languages, 1982.Google Scholar
- 9.Murching, A., Parsad, Y., and Srikant, Y., “Incremental recursive descent parsing”, Computer Languages Vol. 15, No. 4, p193–204, 1990.Google Scholar
- 10.Yang, W., “An incremental LL(1) parsing algorithm”, Information Processing Letters Vol. 48 (1993) 67–72.Google Scholar