• Title/Summary/Keyword: incremental parsing

Search Result 14, Processing Time 0.016 seconds

An Efficient Incremental LR Parsing Algorithm (효율적인 점진적 LR 파성 알고리즘)

  • 안희학;유채우;송후봉
    • Journal of the Korean Institute of Telematics and Electronics B
    • /
    • v.31B no.4
    • /
    • pp.9-17
    • /
    • 1994
  • The incremental parsing techniques are essential part of language-based environment which allow incremental construction of programs, as reparsing of modified part of the program alone enhances the system performance. A number of methods and algorithms have been proposed for incremental parsing and for the construction of incremental parsers. The purpose of this paper is to review the earlier incremental parsing algorithms which are too expensive in both time and space, and to present an efficient incremental LR parsing algorithm which is more efficient than the previous ones. In this paper, we generate automatically an extended LR parsing tables which allow the nonterminal symbols as well as terminal symbols for the input, and apply them to our efficient incremental LR parsing algorithm. Using these extended LR parsing tables. we suggest several methods to reduce its memory spaces and parsing steps as well. The algorithms described here were implemented in C language and YACC on a SUN UNIX OS, and were tested with several grammars and strings.

  • PDF

A Parsing Algorithm for Constructing Incremental Threaded Tree (점진적 스레드 트리를 구성하기 위한 파싱 알고리즘)

  • Lee Dae-Sik
    • Journal of Internet Computing and Services
    • /
    • v.7 no.4
    • /
    • pp.91-99
    • /
    • 2006
  • The incremental parsing technique plays an important role in language-based environment which allows the incremental construction of a program. It improves the performance of a system by reanalyzing only the changed part of a program. The conventional incremental parsing uses the stack data structure in order to store the parsing information. In this paper, we suggest a threaded tree construction algorithm which parse by adding the threaded node address instead of using a stack data structure. We also suggest an incremental threaded tree construction which has incremental parsing process of five steps using the constructed threaded tree.

  • PDF

Computation of Reusable Points in Incremental LL(1) Parsing (점진적 LL(1) 구문분석에서의 재사용 시점의 계산)

  • Lee, Gyung-Ok
    • Journal of KIISE:Software and Applications
    • /
    • v.37 no.11
    • /
    • pp.845-850
    • /
    • 2010
  • Incremental parsing has been developed to reuse the parse result of the original string during the parsing of a new string. The previous incremental LL(1) parsing methods precomputed the reusable point information before parsing and used it during parsing. This paper proposes an efficient reusable point computation by factoring the common part of the computation. The common symbol storing method and the distance storing method were previously suggested to find the reusable point, and by combining the methods, this paper gives the storing method of the distance to common symbols. Based on it, an efficient incremental LL(1) parser is constructed.

On Design and Implementation of Incremental LR Parsing Algorithm Using Changed Threed Tree (변화된 스레드 트리를 이용한 점진적 LR 파싱 알고리즘 구현 및 설계)

  • Lee, Dae-Sik
    • Convergence Security Journal
    • /
    • v.5 no.4
    • /
    • pp.19-25
    • /
    • 2005
  • Threaded Tree is the data structure that can express parse stack as well as parse tree with LR parsing table. $Larchev\^{e}que$ makes Threaded Tree and Incremental Parsing with stack. This paper suggests the algorithm consisting of changed threaded tree without stack in order to reduce reparsing node and parsing speed. Also, it suggests incremental parsing algorithm to get rid of the reparsing process in node.

  • PDF

An Improved Incremental LL(1) Parsing Method (개선된 점진적 LL(1) 파싱 방법)

  • Lee, Gyung-Ok
    • Journal of KIISE:Software and Applications
    • /
    • v.37 no.6
    • /
    • pp.486-490
    • /
    • 2010
  • 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.

A Threaded Tree Construction Algorithm not Using Stack (스택을 이용하지 않는 스레드 트리 구성 알고리즘)

  • Lee Dae-Sik
    • Journal of Internet Computing and Services
    • /
    • v.5 no.5
    • /
    • pp.119-127
    • /
    • 2004
  • As, the development of language-based programming environment, a study on incremental parsing has become an essential part. The purpose of this paper is to show the more efficient incremental parsing algorithm than earlier one that demands parsing speed and memorizing space too much. This paper suggests the threaded tree construction algorithm not using stack. In addition, to remove the reparsing process, it proposes the algorithm for creation node and construction incremental threaded tree not using stack.

  • PDF

Transition and Parsing State and Incrementality in Dynamic Syntax

  • Kobayashi, Masahiro;Yoshimoto, Kei
    • Proceedings of the Korean Society for Language and Information Conference
    • /
    • 2007.11a
    • /
    • pp.249-258
    • /
    • 2007
  • This paper presents an implementation of a gramar of Dynamic Syntax for Japanese. Dynamic Syntax is a grammar formalism which enables a parser to process a sentence in an incremental fashion, establishing the semantic representation. Currently the application of lexical rules and transition rules in Dynamic Syntax is carried out arbitrarily and this leads to inefficient parsing. This paper provides an algorithm of rule application and partitioned parsing state for efficient parsing with special reference to processing Japanese, which is one of head-final languages. At the present stage the parser is still small but can parse scrambled sentences, relative clause constructions, and embedded clauses. The parser is written in Prolog and this paper shows that the parser can process null arguments in a complex sentence in Japanese.

  • PDF

Parsing Korean Using Tree Combining Grammar (트리 합성 문법을 이용한 한국어 파싱)

  • Yang, Seong-Il;Ra, Dong-Yul
    • Annual Conference on Human and Language Technology
    • /
    • 1994.11a
    • /
    • pp.426-433
    • /
    • 1994
  • 본 논문에서는 트리의 점증적인 합성에 의하여 파싱을 진행시켜 나가는 파싱 방법을 소개하며 이의 한국어 파싱에의 응용을 살펴 본다. 이와 같은 트리 합성 파싱(tree combining parsing)을 지원하기 위한 문법인 트리 합성 문법(Tree Combining Grammar)을 소개한다. 우리는 먼저 문맥 자유 문법을 작성한 후 이로부터 자동적인 변환에 의하여 트리 합성 문법을 얻는 과정을 취한다. 따라서 트리 합성 파싱은 일종의 문맥 자유 파싱(context-free parsing)으로 볼 수 있으나 점증성(incremental), 하향성(top-down), 상향성(bottom-up), 유연성(flexible) 등과 같은 장점을 갖고 있다. 트리 합성 파싱의 유연성을 기반으로 하여 부분 자유 어순, 중심어 후행성과 같은 특성을 가진 한국어를 효과적으로 파싱할 수 있도록 트리 합성 파싱을 확장하는 방법을 살펴본다.

  • PDF

A Study of Incremental and Multiple Entry Support Parser for Multi View Editing Environment (다중 뷰 편집환경을 위한 점진적 다중진입 지원 파서에 대한 연구)

  • Yeom, Saehun;Bang, Hyeja
    • Journal of Korea Society of Digital Industry and Information Management
    • /
    • v.14 no.3
    • /
    • pp.21-28
    • /
    • 2018
  • As computer performance and needs of user convenience increase, computer user interface are also changing. This changes had great effects on software development environment. In past, text editors like vi or emacs on UNIX OS were the main development environment. These editors are very strong to edit source code, but difficult and not intuitive compared to GUI(Graphical User Interface) based environment and were used by only some experts. Moreover, the trends of software development environment was changed from command line to GUI environment and GUI Editor provides usability and efficiency. As a result, the usage of text based editor had decreased. However, because GUI based editor use a lot of computer resources, computer performance and efficiency are decreasing. The more contents are, the more time to verify and display the contents it takes. In this paper, we provide a new parser that provide multi view editing, incremental parsing and multiple entry of abstract syntax tree.