Title
Meta-programming through typeful code representation
Abstract
By allowing the programmer to write code that can generate code at run-time, meta-programming offers a powerful approach to program construction. For instance, meta-programming can often be employed to enhance program efficiency and facilitate the construction of generic programs. However, meta-programming, especially in an untyped setting, is notoriously error-prone. In this paper, we aim at making meta-programming less error-prone by providing a type system to facilitate the construction of correct meta-programs. We first introduce some code constructors for constructing typeful code representation in which program variables are represented in terms of deBruijn indexes, and then formally demonstrate how such typeful code representation can be used to support meta-programming. With our approach, a particular interesting feature is that code becomes first-class values, which can be inspected as well as executed at run-time. The main contribution of the paper lies in the recognition and then the formalization of a novel approach to typed meta-programming that is practical, general and flexible.
Year
DOI
Venue
2005
10.1145/944705.944730
ICFP '03 Proceedings of the eighth ACM SIGPLAN international conference on Functional programming
Keywords
Field
DocType
generic programming,languages,meta programming,type system
Metaprogramming,Program Efficiency,Programming language,Programmer,Source code,Computer science,Theoretical computer science,Software construction
Journal
Volume
Issue
ISSN
38
9
0362-1340
ISBN
Citations 
PageRank 
1-58113-756-7
21
0.96
References 
Authors
21
4
Name
Order
Citations
PageRank
Chiyan Chen1955.37
Hongwei Xi265256.11
CY Chen3362.81
HW Xi4291.63