Budget Amount *help |
¥3,850,000 (Direct Cost: ¥3,700,000、Indirect Cost: ¥150,000)
Fiscal Year 2007: ¥650,000 (Direct Cost: ¥500,000、Indirect Cost: ¥150,000)
Fiscal Year 2006: ¥1,100,000 (Direct Cost: ¥1,100,000)
Fiscal Year 2005: ¥1,300,000 (Direct Cost: ¥1,300,000)
Fiscal Year 2004: ¥800,000 (Direct Cost: ¥800,000)
|
Research Abstract |
The main purpose of this four-year project is to study the foundation of meta-programming, that is, writing a program that generates programs. Meta-programming is ubiquitous in various fields of software, in particular, domain-specific languages, and, therefore, the efficient and reliable construction of meta-programs is an important issue in today's computer science. In this study, we have observed that a proper treatment of meta-programs needs a clear separation of two control flows of programs, one for the code generation, and the other for the execution of the generated codes. In order to explicitly manipulate these control flows, and abstract them as delimited continuations, we have studied two most important sets of control operators, "shift/reset" and "control/prompt", and constructed rigid foundation for them. Based on the semantical analysis for them, we have (1) given type systems for them, (2) proved basic properties such as type soundness, confluence, and compatibility with CPS translation, and (3) analyzed the expressive power of them. We believe that these results build a solid foundation for the future study of meta-programming.
|