- Multi-staged programming language
Staged computation, which explicitly divides a computation into
separate stages, is a unifying framework for existing program
generation systems: partial evaluation, run-time code generation,
function inlining and macro expansion are all instances of staged computation.
Recently, I am interested in type system, Curry-Howard correspondence,
exception analysis, and unstaging transformation of open-code multi-staged
programming languages.
- Program analyzer generating system
We address two problems in compiling high-level static
analysis specifications into executable analyzers: how to check the
correctness - termination - of the specifications and
how to achieve the efficiency of the generated analyzers.
One of the sufficient conditions for terminating program analysis
is the extensionality of analysis function.
Once extensionality of the function is ascertained, the
generated analyzer is guaranteed to terminate.
In order to achieve the efficiency of the generated analyzers,
we develop a differential fixpoint iteration method.
-
Static Extensivity Analysis for Lambda-Definable Functions Over Lattices
Hyunjun Eo,
Kwangkeun Yi,
Kwang-Moo Choe
New Generation Computing
(in revision)
-
A Differential Fixpoint Iteration Method for Static Analysis Specifications
Hyunjun Eo,
Kwangkeun Yi
Technical Memorandum
ROPAS-2004-21,
Research On Program Analysis System,
Seoul National University, February 2004.
-
An Improved Differential Fixpoint Iteration Method for Program Analysis
Hyunjun Eo,
Kwangkeun Yi
In Proceedings of
The Third Asian Workshop on Programming Languages and Systems,
Shanghai Jiao Tong University, Shanghai, November 2002.
-
Static Extensionality Analysis for Lambda-Definable Functions Over Lattices
Kwangkeun Yi,
Hyunjun Eo
In Proceedings of
The Third Asian Workshop on Programming Languages and Systems,
Shanghai Jiao Tong University, Shanghai, November 2002.
-
Static Extensionality Analysis for Lambda-Definable Functions Over Lattices
Kwangkeun Yi,
Hyunjun Eo
Technical Memorandum
ROPAS-2002-17,
Research On Program Analysis System,
National Creative Research Center,
Korea Advanced Institute of Science and Technology, September 2002.
-
ºÐ¼®±â »ý¼º ½Ã½ºÅÛ Z1¿¡¼ ±×·¡ÇÈ »ç¿ëÀÚ ÀÎÅÍÆäÀ̽ºÀÇ ÀÚµ¿ »ý¼º
¾îÇöÁØ,
À̱¤±Ù,
±è¼ºÈÆ
Çѱ¹Á¤º¸°úÇÐȸ 97 º½ Çмú¹ßÇ¥³í¹®Áý,
(24)1:57-60, 1997³â 4¿ù.
-
ºÐ¼®±â »ý¼º ½Ã½ºÅÛ Z1¿¡¼ ±×·¡ÇÈ »ç¿ëÀÚ ÀÎÅÍÆäÀ̽ºÀÇ ÀÚµ¿ »ý¼º
¾îÇöÁØ
¼®»çÇÐÀ§³í¹®,
KAIST, 1998
-
SUIF program analysis using System Z2
Seong-Hoon Kim,
Kwangkeun Yi,
Hyun-jun Eo,
Kwang-Moo Choe
In Proceedings of
The 2nd SUIF Workshop, 185-190,
Stanford Univ. 21-23 August 1997.
- Type system and type based program analysis
-
Proofs of a Set of Hybrid Let-Polymorphic Type Inference Algorithms
Hyunjun Eo,
Oukseh Lee,
Kwangkeun Yi
New Generation Computing
Vol. 22, No.1, pp.1-36, 2004.
-
Static Extensivity Analysis for Lambda-Definable Functions Over Lattices
Hyunjun Eo,
Kwangkeun Yi,
Kwang-Moo Choe
New Generation Computing
Vol. 24, No. 1, pp. 53-78, 2006
-
Type and Effect System for Multi-Staged Exceptions
Hyunjun Eo,
Ik-Soon Kim,
Kwangkeun Yi
In Proceedings of
The 4th Asian Symposium on Programming Languages and Systems (APLAS '2006),
Sydney, November 2006.
Lecture Notes in Computer Science, Vol. 4279, pp. 61-78.
- Fixpoint iteration algorithm
- Model checking and program logic
-
Proofs about Folklore: Why Model Checking = Reachability?
Nikolay V. Shilov,
Kwangkeun Yi,
Hyunjun Eo,
Seung-Hwan O,
Kwang-Moo Choe
Acta Informatica,
(submitted)
-
Game Semantics with Finite Plays for Propositional Program Logics
Hyunjun Eo,
Seung-Hwan O,
Nikolay V. Shilov
(submitted to)
Computer Science Logic (CSL '2005)
-
Finite Game Semantics for Propositional Program Logics
Hyunjun Eo,
Seung-Hwan O,
Nikolay V. Shilov
Short Presentation in
The Twentieth Annual IEEE Symposium on Logic in Computer Sciece (LICS '2005)
,
Chicago, June 2005.
-
¸ðµ¨Ã¼Ä¿¸¦ °ËÁõÇϱâ À§ÇÑ ¸ðµ¨Ã¼Ä¿
¾îÇöÁØ,
Nikolay V. Shilov,
À̱¤±Ù
Çѱ¹Á¤º¸°úÇÐȸ °¡À»ÇмúȸÀÇ,
28(2):337-339, 2001³â 10¿ù.
- Run-time specialzation of static analysis
We present a technique of using static analysis for estimating
program's input-dependent properties.
A static analysis that is originally designed for estimating the
input-independent properties of programs is transformed into one that
can safely estimate the input-dependent properties at
the programs' input occurrence.
Our idea is to defer the finish of the static analysis to the
program's run-time. By analyzing the static analysis, we identify the
parts of the analysis that are sensitive to the program's inputs, hence need
to be deferred to the program's run-time. Then by using an analysis
named static value-slicing, we short-cut some of the dynamic
parts so that they are solved by simple membership
tests for the program's input. This re-formulation
accelerates the analysis; once the program's input occurs the prepared
dynamic parts can immediately and simultaneously start to resolve.
-
½ÇÇà½Ã°£ Àü¹®È¸¦ À§ÇÑ ÁýÇÕ±â¹ÝºÐ¼®ÀÇ Áغñ
¾îÇöÁØ,
À̱¤±Ù
Çѱ¹Á¤º¸°úÇÐȸ ³í¹®Áö,
27(9):986-1002, 2000³â 9¿ù.
-
Preparing Set-Based Analysis for Run-time Specialization
Hyunjun Eo,
Kwangkeun Yi
Technical Memorandum
ROPAS-1999-1,
Research On Program Analysis System,
National Creative Research Center,
Korea Advanced Institute of Science and Technology, November 1999.
-
Á¤Àû ºÐ¼®ÀÇ ½ÇÇà½Ã°£ Àü¹®È¿¡ °üÇÑ ¿¬±¸
¾îÇöÁØ,
À̱¤±Ù
ÇÁ·Î±×·¡¹Ö¾ð¾î¿¬±¸È¸
1999³â µ¿°è ¿öÅ©¼¥ ³í¹®Áý, 1999³â 2¿ù.
(slides)
- Etc.
-
nML ÄÄÆÄÀÏ·¯ ½Ã½ºÅÛ (status report)
À̱¤±Ù,
ÀÌ¿í¼¼,
¾îÇöÁØ,
±èÁ¤ÅÃ,
ÃÖ¿õ½Ä,
·ù¼®¿µ,
°Çö±¸,
¼¼±¾Ö,
À强¼ø,
±è¹ü½Ä
Çѱ¹Á¤º¸°úÇÐȸ °¡À»ÇмúȸÀÇ,
28(2):340-342, 2001³â 10¿ù.
-
Standard ML¿¡¼ 󸮵ÇÁö ¾ÊÀº ¿¹¿Ü»óȲÀÇ ¹ß»ýµÈ À§Ä¡¸¦ Ãâ·ÂÇÏ´Â ¹æ¹ý
¾îÇöÁØ
ÇлçÇÐÀ§³í¹®,
KAIST, 1996