• Title/Summary/Keyword: 추상 구문 트리

Search Result 17, Processing Time 0.036 seconds

Transformation of AST to Semantic Tree (추상 구문 트리에서 시멘틱 트리로의 변환)

  • Son, Yun-Sik;Ko, Serk-Hun;Oh, Se-Man
    • Proceedings of the Korean Information Science Society Conference
    • /
    • 2005.07b
    • /
    • pp.892-894
    • /
    • 2005
  • 의미 분석이란 프로그램의 각 구성요소의 결합이 의미적으로 타당한가를 분석하는 과정으로 최근 컴파일러의 제작에서 필수 불가결한 요소이며, 속성문법(attribute grammar)이나 경험적인 방법(manual method)으로 해결한다. 그러나 이러한 방법론들은 효율성이나 자동화 측면에서 제약성을 가진다. 본 연구에서는 이러한 단점을 보완하기 위해 의미 분석정보가 포함된 시멘틱 트리를 정의하고, 대부분의 컴파일러에서 사용되는 구문분석 결과물인 추상 구문 트리를 시멘틱 트리로 변환하는 기법을 제안한다. 시멘틱 트리 변환기법은 의미 분석과정을 시멘틱 노드 단위로 처리하므로, 의미 분석 과정이 일관적으로 수행되며 효율적이고, 타 자료구조로의 변환이 용이하며 자동화가 용이하다.

  • PDF

Design and Implementation of the VoiceXML Interpreter for Voice Web-service (음성 웹서비스를 위한 VoiceXML 해석기의 설계 및 구현)

  • 신현경;강동남;염세훈;유재우
    • The Journal of the Acoustical Society of Korea
    • /
    • v.20 no.4
    • /
    • pp.42-47
    • /
    • 2001
  • In this paper, we propose an interpreter, which recognizes the VoiceXML markups, verifies the validation of the document, and interprets the VoiceXML documents using DI parser and the generated AST by the parser. The VoiceXML interpreter consists of DI parser and executor, and the DI parser uses recursive descent parsing technology, and the executor uses FIA (Form Interpretation Algorithm) proposed by VXML forum. This system uses the Java language in order to develop the runtime environment for VoiceXML efficiently, thus this system has portability.

  • PDF

A Design and Implementation of the VoiceXML Multiple-View Editor Using MVC Framework (MVC 프레임 워크를 사용한 VoiceXML 다중 뷰 편집기의 설계 및 구현)

  • 유재우;염세훈
    • The Journal of the Acoustical Society of Korea
    • /
    • v.23 no.5
    • /
    • pp.390-399
    • /
    • 2004
  • In this paper, we design and implement a multiple-view VoiceXML editor to improve editing efficiency of the VoiceXML. The VoiceXML multiple-view Editor uses a MVC framework to support multiple views and paradigm. Our multiple-view editor consists of Model. View and Controller using MVC framework. A model, core data structure. is constructed of abstract syntax tree and abstract grammar. A view. user interface. is formalized in unparsing rules and unparser. A controller. to control model and view. is made of command interpreter and tree handler. The VoiceXML multiple-view editor overcomes a drawbacks of existing XML editors by showing document structure and context concurrently. as well as document flows. Our VoiceXML multiple-view editor. which MVC framework has been applied, provides various editing views concurrently to users. Thereby. it supports efficient and convenient editing environments for voice-web documents to users and it guarantees transparency of editors. as various views have a same consistent model.

Aspect Mining Process Design Using Abstract Syntax Tree (추상구문트리를 이용한 어스팩트 마이닝 프로세스 설계)

  • Lee, Seung-Hyung;Song, Young-Jae
    • The Journal of the Korea Contents Association
    • /
    • v.11 no.5
    • /
    • pp.75-83
    • /
    • 2011
  • Aspect-oriented programming is the paradigm which extracts crosscutting concern from a system and solves scattering of a function and confusion of a code through software modularization. Existing aspect developing method has a difficult to extract a target area, so it is not easy to apply aspect mining. In an aspect minning, it is necessary a technique that convert existing program refactoring elements to crosscutting area. In the paper, it is suggested an aspect mining technique for extracting crosscutting concern in a system. Using abstract syntax structure specification, extract functional duplicated relation elements. Through Apriori algorithm, it is possible to create a duplicated syntax tree and automatic creation and optimization of a duplicated source module, target of crosscutting area. As a result of applying module of Berkeley Yacc(berbose.c) to mining process, it is confirmed that the length and volume of program has been decreased of 9.47% compared with original module, and it has been decreased of 4.92% in length and 5.11% in volume compared with CCFinder.

Analyzing Developer's Share of Code Based on Abstract Syntax Tree (추상 구문 트리 기반의 개발자별 소스 코드 지분 분석)

  • Lee, Yong-hyeon;Kim, KiSub;Jung, Woosung
    • Proceedings of the Korean Society of Computer Information Conference
    • /
    • 2015.07a
    • /
    • pp.23-24
    • /
    • 2015
  • 소프트웨어 프로젝트에서 발생하는 버그의 수가 증가함에 따라 이를 수정할 적합한 개발자를 효과적으로 찾기 위한 연구들이 진행되었다. 하지만, 대부분의 연구들이 텍스트 기반의 라인 변경을 통해 얻은 정보만을 활용하기 때문에 정확도가 떨어지며, 파일, 클래스, 함수와 같은 다양한 계층 단위에 대한 처리가 어렵다. 본 논문은 개발자의 코드 변경 정보를 추적함으로써 기여도를 보다 정확하게 계산하고, 다양한 코드 수준에서의 분석을 효과적으로 지원하는 AST기반의 지분 계산 접근법을 제안한다.

  • PDF

A Syntax-Directed XML Document Editor using Abstract Syntax Tree (추상구문트리를 이용한 구문지향 XML 문서 편집기)

  • Kim Young-Chul;You Do Kyu
    • Journal of Internet Computing and Services
    • /
    • v.6 no.2
    • /
    • pp.117-126
    • /
    • 2005
  • The current text based XML document systems are editing text and don't perform syntax check. As a result, the validity of an edited XML document can't be decided it is well-formed or valid until it is parsed. This paper describes a design and implementation of the syntax-directed editing system for XML documents. Because this is tree-based system, it is easy to extend XML document. And this system is designed to validate XML documents in real-time, It is expected that this paper contributes XML related application developments.

  • PDF

Java API Pattern Extraction and Recommendation using Collocation Analysis (연어 관계 분석을 통한 Java API 패턴 추출 및 추천 방법)

  • Kwon, Chanwoo;Hwang, Sangwon;Nam, Youngkwang
    • Journal of KIISE
    • /
    • v.44 no.11
    • /
    • pp.1165-1177
    • /
    • 2017
  • Many developers utilize specific APIs to develop software, and to identify the use of a particular API, a developer can refer to a website that provides the API or can retrieve the API from the web. However, the site that provides the API does not necessarily provide guidance on how to use it while it can be partially provided in many other cases. In this paper, we propose a novel system JACE (Java AST collocation-pattern extractor) as a method to reuse commonly-used code as a supplement. The JACE extracts the API call nodes, collocation patterns and analyzes the relations between the collocations to extract significant API patterns from the source code. The following experiment was performed to verify the accuracy of a defined pattern: 794 open source projects were analyzed to extract about 15M API call nodes. Then, the Eclipse plug-in test program was utilized to retrieve the pattern using the top 10 classes of API call nodes. Finally, the code search results from reference pages of the API classes and the Searchcode [1] were compared with the test program results.

An Abstract Grammar for XML Document Editing (XML 문서 편집을 위한 추상문법)

  • 신경희;최종명;유재우
    • Journal of KIISE:Software and Applications
    • /
    • v.30 no.3_4
    • /
    • pp.268-277
    • /
    • 2003
  • A document type definition(DTD) which defines tags for a document is a XML document grammar that defines syntactic structure of a document. An XML document keeps the rules and must be parsed to check validation. To parse XML document, the deterministic parsing method of programming language is irrelevant because it does not satisfy the definition of deterministic content model in element declaration. In this paper, we consider editing of a valid XML document in syntax-directed editing environment, and we suggest the internal storage representations of syntax in DTD and theirs algorithms. The consequence is that a syntactic structure of textual DTD is transformed into graph and table structures. The table structure of DTD is interpreted the context free grammar which has attribute values and is used in syntax-directed editor for XML. We called this the XML abstract grammar and showed generated results and examples.

A Design and Implementation of HTML Filter for Wireless Internet Service (무선 인터넷 서비스를 위한 HTML Filter의 설계 및 개발)

  • Jeong, Sam-Jin
    • Journal of the Korea Academia-Industrial cooperation Society
    • /
    • v.9 no.6
    • /
    • pp.1659-1665
    • /
    • 2008
  • In this paper, we propose a design and implementation of HTML Filter to provide wireless internet service efficiently. The HTML Filter translates the Web documents written by HTML into the WML documents for portable wireless equipments automatically that are suitable for the WAP environment. The HTML Filter consists of "the HTML lexical analyzer" which gathers HTML source into token units, "the HTML syntax analyzer" which takes the lexical units from the lexical analyzer and analyses grammar for the source, "the HTML abstract parser tree" which can represent meaning of HTML sources more effectively called an intermediate code, and "the target code generator" which can convert the abstract parser tree into WML documents. The proposed translating method using ordinary compiler technology provides more easy and effective than the existing converters, and will be applied to other wireless language translating methods on wireless internet.

Generating Code for Distributed Environment (분산 환경을 위한 코드 생성)

  • 박찬모;정성옥;이준
    • Proceedings of the Korea Multimedia Society Conference
    • /
    • 2002.05c
    • /
    • pp.58-63
    • /
    • 2002
  • 본 논문에서는 분산 환경을 위해 OMG에서 발표한 CORBA의 표준에 따라 하는 컴파일러의 전반부를 위해 OMG IDL 컴파일러를 사용하였다. CORBA에서 클라이언트와 서버간의 상호 동작을 위해 인터페이스를 정의한다. CORBA에서 인터페이스는 IDL(Interface Definition Language)를 통해 정의를 할 수 있다. IDL은 CORBA의 인터페이스를 기술하기 위한 추상 표기법이므로 개발에 사용되는 언어와는 연관성이 없다. 이를 개발에 사용하기 위해서 해당 언어로 맵핑을 하여야 한다. 본 논문은 IDL로 정의된 인터페이스를 C++로 맵핑하도록 하여 분산 객체 환경을 지원하도록 하기 위한 것이다. IDL 컴파일러는 IDL 정의를 입력 받아 어휘 및 구문 분석을 한 후 AST 트리를 생성하며, 생성된 각 노드를 통해 맵핑된 C++ 코드를 생성토록 한다.

  • PDF