DocumentCode
834625
Title
Multistage programming support in CLI
Author
Attardi, G. ; Cisternino, A.
Author_Institution
Dipt. di Informatica, Pisa, Italy
Volume
150
Issue
5
fYear
2003
Firstpage
275
Lastpage
281
Abstract
Execution environments such as CLR and JVM provide many features needed by multi-stage programming languages, though there is no explicit support for them. Besides, staged computations are widely used in areas such as Web programming and generative programming. In the paper the authors present a possible CLR extension (which can also be ported to JVM) to provide support for multi-stage languages. The extension is based on CodeBricks - a framework for run-time code generation which allows expressing homogenous transformations of intermediate language as a composition of methods. They discuss the code generation strategy adopted by the framework and how an extension to CLR may improve the performance of multi-stage applications, although CodeBricks can also be implemented using the standard CLR. An informal discussion of how to translate MetaML staging annotations into CodeBricks is provided with a simple example.
Keywords
Java; program compilers; programming environments; software performance evaluation; CLI; CLR extension; CodeBricks; JVM; MetaML staging annotations; Web programming; generative programming; homogenous transformations; intermediate language; method composition; multistage programming support; performance; programming languages; run-time code generation;
fLanguage
English
Journal_Title
Software, IEE Proceedings -
Publisher
iet
ISSN
1462-5970
Type
jour
DOI
10.1049/ip-sen:20030990
Filename
1249336
Link To Document