ACM Home Page
Please provide us with feedback. Feedback
[a]C#: C# with a customizable code annotation mechanism
Full text PdfPdf (134 KB)
Source Symposium on Applied Computing archive
Proceedings of the 2005 ACM symposium on Applied computing table of contents
Santa Fe, New Mexico
SESSION: Object-oriented programming languages and systems (OOP) table of contents
Pages: 1264 - 1268  
Year of Publication: 2005
ISBN:1-58113-964-0
Authors
Walter Cazzola  Università degli Studi di Milano
Antonio Cisternino  Università degli Studi di Pisa
Diego Colombo  Università degli Studi di Pisa
Sponsor
SIGAPP: ACM Special Interest Group on Applied Computing
Publisher
ACM  New York, NY, USA
Bibliometrics
Downloads (6 Weeks): 7,   Downloads (12 Months): 29,   Citation Count: 0
Additional Information:

abstract   references   index terms   collaborative colleagues  

Tools and Actions: Request Permissions Request Permissions    Review this Article  
DOI Bookmark: Use this link to bookmark this Article: http://doi.acm.org/10.1145/1066677.1066964
What is a DOI?

ABSTRACT

Reflective programming is becoming popular due to the increasing set of dynamic services provided by execution environments like JVM and CLR. With custom attributes Microsoft introduced an extensible model of reflection for CLR: they can be used as additional decorations on element declarations. The same notion has been introduced in Java 1.5. The extensible model proposed in both platforms limits annotations to class members. In this paper we describe [a]C#,1 an extension of the C# programming language, that allows programmers to annotate statements or code blocks and retrieve these annotations at run-time. We show how this extension can be reduced to the existing model. A set of operations on annotated code blocks to retrieve annotations and manipulate bytecode is introduced. Finally, we discuss how to use [a]C# to annotate programs giving hints on how to parallel a sequential method and how it can be implemented by means of the abstractions provided by the run-time of the language.


REFERENCES

Note: OCR errors may be found in this Reference List extracted from the full text article. ACM has opted to expose the complete List rather than only correct and linked references.

 
1
 
2
Giuseppe Attardi and Antonio Cisternino. Multistage Programming Support in CLI. IEE Proceedings Software, 150(5):275--281, October 2003.
 
3
Giuseppe Attardi, Antonio Cisternino, and Diego Colombo. CIL + Metadata > Executable Program. Journal of Object Technology. Special issue: .NET: The Programmer's Perspective: ECOOP Workshop 2003, 3(2): 19--26, 2004.
4
 
5
 
6
 
7
 
8
 
9
 
10
Craig Walls and Norman Richards. XDoclet in Action. Manning Publications, December 2003.
 
11
Albrecht Wöß, Markus Löberbauer, and Hanspeter Mössenböck. Compiler Generation Tools for C#. IEE Proceedings Software, 150(5):323--327, October 2003.

Collaborative Colleagues:
Walter Cazzola: colleagues
Antonio Cisternino: colleagues
Diego Colombo: colleagues