An Improved Incremental LL(1) Parsing Method

개선된 점진적 LL(1) 파싱 방법

  • Received : 2010.03.02
  • Accepted : 2010.04.02
  • Published : 2010.06.15

Abstract

Incremental parsing has been researched in the intention that the parse result of the original string is reused in the parsing of a new string. This paper proposes an improved method of the previous incremental LL(1) parser with nonterminal lookahead symbols. The previous work is time-inefficient because it repeatedly performs unnecessary steps when an error occurs. This paper gives a solution for the problem.

점진적 파싱은 기존의 입력 문자열에 대한 파싱 정보를 새로운 문자열의 파싱시에 이용하고자 하는 취지로 연구 개발되었다. 본 논문은 기존에 제안된 비단말 심볼을 미리보기(lookahead) 심볼로 포함시킨 점진적 LL(1) 파서를 개선시킨 방법을 제안한다. 기존 연구에서는 오류가 발생한 상황에서 불필요한 작업을 반복적으로 수행하기에 시간적으로 비효율적이다. 본 논문에서는 이에 대한 해결 방안을 제공한다.

Keywords

References

  1. M.D. Schwartz, N.M. Delisle, and V.S. Begwani, "Incremental compilation in Magpie", Proc. SIGPLAN 84 Symp. On Compiler Construction, Montreal, Canada, 1984, ACM SIGPLAN Notices, vol.19, pp.122-131, 1984.
  2. J.F. Beetem and A.F. Beetem, "Incremental scanning and parsing with Galaxy," IEEE Trans. Software Engineering, vol.17, pp.641-651, 1991. https://doi.org/10.1109/32.83901
  3. W. Yang, "An incremental LL(1) parsing algorithm," Information Processing Letters, vol.48, pp. 67-72, 1993. https://doi.org/10.1016/0020-0190(93)90179-D
  4. W. Li, "A simple and efficient incremental LL(1) parsing," Proceedings of the 22nd Seminar on Current Trends in Theory and Practice of Informatics( SOFSEM '95). Lecture Notes in Computer Science, vol.1012, Springer, New York, pp. 399- 404, 1995.
  5. W. Li, "Building efficient incremental LL parsers by augmenting LL tables and threading parse trees," Comput. Lang., vol.22, no.4, pp.225-235, 1996. https://doi.org/10.1016/S0096-0551(96)00015-X
  6. A.V. Aho and J.D. Ullman, The Theory of Parsing, Translation and Compiling, vols. 1 & 2, Prentice- Hall, Englewood Cliffs, NJ, 1972, 1973.
  7. S. Sippu and E. Soisalon-Soininen. Parsing Theory, vols. I & II, Springer, Berlin, 1990.