By Topic

Compiler generation tools for C#

Sign In

Cookies must be enabled to login.After enabling cookies , please use refresh or reload or ctrl+f5 on the browser for the login options.

Formats Non-Member Member
$31 $31
Learn how you can qualify for the best price for this item!
Become an IEEE Member or Subscribe to
IEEE Xplore for exclusive pricing!
close button

puzzle piece

IEEE membership options for an individual and IEEE Xplore subscriptions for an organization offer the most affordable access to essential journal articles, conference papers, standards, eBooks, and eLearning courses.

Learn more about:

IEEE membership

IEEE Xplore subscriptions

3 Author(s)
Woss, A. ; Inst. for Practical Comput. Sci., Johannes Kepler Univ. Linz, Austria ; Loberbauer, M. ; Mossenbock, H.

Recursive descent parsing has the advantage of more convenient semantic processing than in the case of bottom-up parsing. However, it is limited to LL(1) grammars, which has often prevented its use for popular programming languages, such as Java or C#. The authors extended their compiler generator Coco/R, which generates recursive descent parsers, so that the user can specify rules for LL(1) conflict resolution. The simple technique works by evaluating user-defined Boolean expressions to allow the parser to make its parsing decisions where a one-symbol lookahead does not suffice. Thus multi-symbol lookahead or even semantic information can now guide the parsing process as well. Using their extended compiler generator, the authors implemented a compiler front end for C# that can be used as a framework for implementing a variety of tools, two of which are described in more detail: a white-box testing tool that measures path coverage, and a performance hint tool that evaluates source code according to user-defined rules about performance enhancements or coding style.

Published in:

Software, IEE Proceedings -  (Volume:150 ,  Issue: 5 )