He was born in 1968, and received his B.S., M.S., and D.S. degrees from University of Tokyo in 1991, 1993 and 1996, respectively. He is a professor in Graduate School of Information Sciences, Tohoku University. His current major research interests are in principles of programming languages. In particular, he is interested in type systems and static analysis of functional and concurrent programming languages.
Type systems play an important role in guaranteeing partial correctness of programs. By enriching standard types with various information about program behavior, we can analyze a variety of properties of programs. Our recent work include:
Concurrent programs are hard to read, write, or debug. We have been studying type systems for statically checking behavior of concurrent programs. In particular, we have developed type systems for finding which communication or synchronization is guaranteed to succeed. Based on that work, we have implemented a type-based program analysis tool TyPiCal.
Resources such as files, memory, and network usually are associated with certain protocols. For example, a file should be eventually closed, and it should not be accessed afterwards. A lock that has been acquired lock should be eventually released. We are studying type-based methods for statically verifying that a program conforms to such resource usage policies. See our TOPLAS paper.
Recent studies include type-based transformation of XML tree processing programs into XML stream processing programs (see our papers in APLAS 2004 and LOPSTR 2005), and type-based methods for useless-code elimination (see see our papers in Higher-Order and Symbolic Computation and APLAS2003).
I have been collaborating with Reynald Affeldt to develop a Coq library for verification of conurrent programs.
E-mail: