• Title/Summary/Keyword: 정적타입추론

Search Result 7, Processing Time 0.027 seconds

Inference of Static Types for 3-Address Codes in CTOC (CTOC에서 3-주소 코드를 위한 정적 타입 추론)

  • Kim Ki-Tae;Yoo Weon-Hee
    • Proceedings of the Korea Information Processing Society Conference
    • /
    • 2004.11a
    • /
    • pp.437-440
    • /
    • 2004
  • 자바 바이트 로드 명령어는 타입에 관한 정보를 포함하고 있다. 그러나 기본적으로 스택 기반으로 동작이 수행되기 때문에 지역 변수를 위한 명시적인 타입을 가지지 않는다. 하지만 프로그램의 최적화나 역컴파일을 위해서는 지역 변수의 타입을 아는 것이 중요하다. 본 논문은 스택을 사용하지 않는 3-주소 코드에서 지역 변수를 위한 정적 타입 추론을 구현한다. 이를 위해 본 논문에서는 SSA와 방향성 그래프를 적용한다.

  • PDF

Static Type Inference Based on Static Single Assignment for Bytecode (바이트코드를 위한 정적 단일 배정문 기반의 정적 타입 추론)

  • Kim Ji-Min;Kim Ki-Tea;Kim Je-Min;Yoo Weon-Hee
    • Journal of the Korea Society of Computer and Information
    • /
    • v.11 no.4 s.42
    • /
    • pp.87-96
    • /
    • 2006
  • Although bytecode has many good features, it has slow execution speed and it is not an ideal representation for program analysis or optimization. For analysises and optimizations. bytecode must be translated to a Static Single Assignment Form(SSA Form) But when bytecode is translated a SSA Form it has lost type informations of son variables. For resolving these problem in this paper, we create extended control flow graph on bytecode. Also we convert the control flow graph to SSA Form for static analysis. Calculation about many informations such as dominator, immediate dominator. dominance frontier. ${\phi}$-Function. renaming are required to convert to SSA Form. To obtain appropriate type for generated SSA Form, we proceed the followings. First. we construct call graph and derivation graph of classes. And the we collect information associated with each node. After finding equivalence nodes and constructing Strongly Connected Component based on the collected informations. we assign type to each node.

  • PDF

JavaScript-to-c++ Type Inferencing Transcompiler Using Cartesian Product Algorithm (Cartesian Product Algorithm을 사용한 JavaScript-to-C++ 타입 추론 컴파일러)

  • Kim, Jaeju;Han, Hwansoo
    • Proceedings of the Korea Information Processing Society Conference
    • /
    • 2015.10a
    • /
    • pp.910-913
    • /
    • 2015
  • 자바스크립트는 웹 페이지를 제어하기 위한 표준적인 스크립트 언어로 오랫동안 사용되어 왔다. 최근 웹 앱이나 서버사이드 응용 프로그램을 자바스크립트로 작성하게 되면서, 자바스크립트 프로그램을 더욱 빠르게 동작하도록 만드는 것이 중요한 이슈가 되었다. 본 논문에서는 암시적인 동적 타입 시스템을 사용하는 자바스크립트 언어에 Cartesian Product Algorithm을 적용하여 타입을 추론하고, 이 정보를 바탕으로 정적 타입 시스템인 C++ 코드로 변환하는 컴파일러의 구조와 알고리즘을 제시한다.

Split Local Variables Using Static Single Assignment Form in CTOC (CTOC에서 정적 단일 배정문 형태를 이용한 지역 변수 분리)

  • Lee Kab-Lae;Yoo Weon-Hee;Kim Ki-Tae
    • The Journal of the Korea Contents Association
    • /
    • v.5 no.3
    • /
    • pp.73-81
    • /
    • 2005
  • CTOC(Classes To Optimized Classes) is a Java bytecode framework for optimization and analysis. Although Java bytecode has a significant amount of type information embedded in it, there are no explicit types for local variables. However, knowing types for local variables is very useful for both program optimization and analysis. This paper is a first part of CTOC framework. In this paper, we present methods for inferring static types for local variables in a 3-address, stackless, representation of Java bytecode. We use SSA Form(Single Static Assignment Form) for spliting local variables. Splited local variables will use to prepare for static type inference.

  • PDF

A Study on Color Information Recognition with Improved Fuzzy Inference Rules (개선된 퍼지 추론 규칙을 이용한 색채 정보 인식에 관한 연구)

  • Woo, Seung-Beom;Kim, Kwang-Baek
    • Proceedings of the Korea Contents Association Conference
    • /
    • 2009.05a
    • /
    • pp.105-111
    • /
    • 2009
  • Widely used color information recognition methods based on the RGB color model with static fuzzy inference rules have limitations due to the model itself - the detachment of human vision and applicability of limited environment. In this paper, we propose a method that is based on HSI model with new inference process that resembles human vision recognition process. Also, a user can add, delete, update the inference rules in this system. In our method, we design membership intervals with sine, cosine function in H channel and with functions in trigonometric style in S and I channel. The membership degree is computed via interval merging process. Then, the inference rules are applied to the result in order to infer the color information. Our method is proven to be more intuitive and efficient compared with RGB model in experiment.

  • PDF

Color Analysis with Enhanced Fuzzy Inference Method (개선된 퍼지 추론 기법을 이용한 칼라 분석)

  • Kim, Kwang-Baek
    • Journal of the Korea Society of Computer and Information
    • /
    • v.14 no.8
    • /
    • pp.25-31
    • /
    • 2009
  • Widely used color information recognition methods based on the RGB color model with static fuzzy inference rules have limitations due to the model itself-the detachment of human vision and applicability of limited environment. In this paper, we propose a method that is based on HSI model with new inference process that resembles human vision recognition process. Also, a user can add, delete, update the inference rules in this system. In our method, we design membership intervals with sine, cosine function in H channel and with functions in trigonometric style in S and I channel. The membership degree is computed via interval merging process. Then, the inference rules are applied to the result in order to infer the color information. Our method is proven to be more intuitive and efficient compared with RGB model in experiment.

Static Single Assignment Form for Java Bytecodes in CTOC (CTOC에서 자바 바이트코드를 위한 정적 단일 배정 형태)

  • Kim, Ki-Tae;Yoo, Weon-Hee
    • The KIPS Transactions:PartD
    • /
    • v.13D no.7 s.110
    • /
    • pp.939-946
    • /
    • 2006
  • Although the Java bytecode has numerous advantages, there are also shortcomings such as slow execution speed and difficulty in analysis. In order to overcome such disadvantages, bytecode analysis and optimization must be performed. We implements CTOC for optimized codes. An extended CFG must be first created in order to analyze and optimize a bytecode. Due to unique bytecode properties, the existing CFG must be expanded according to the bytecode. Furthermore, the CFG must be converted into SSA Form for a static analysis, for which calculation is required for various information such as the dominate relation, dominator tree, immediate dominator, $\phi$-function, rename, and dominance frontier. This paper describes the algorithm and the process for converting the existing CFG into the SSA From. The graph that incorporates the SSA Form is later used for type inference and optimization.