Since there are certain advantages to using RD-parsers, we want to extend Coco/R so that it can deal with non-LL(1) grammars by using additional semantic information. The solution we have in mind is the following:
Enable semantic annotations in the attributed grammars to distinguish between alternatives that would produce LL(1)-conflicts. This demands some changes to Coco/R which shall be implemented as one part of this project. Having this extension installed is a requirement for using Coco/R with C#, which we plan to do in the second part of the project.
For the second part of the project, we want to use mainly the shared source implementation of the C# compiler in order to get a better understanding of how it works, and therefore be able to create an attributed C# grammar template that is fully compliant to the language definition.
The new version of Coco/R and the attributed grammar template will form a framework that provides complete parsing facilities for C# programs. Concrete applications can be instantiated from the framework by simply inserting the necessary semantic actions into the ATG template, and letting Coco/R automatically create the scanner and parser.
Sprache der Kurzfassung:
Englisch
Englische Bezeichnung:
Microsoft SSCLI "Rotor" Project
Englische Kurzfassung:
Since there are certain advantages to using RD-parsers, we want to extend Coco/R so that it can deal with non-LL(1) grammars by using additional semantic information. The solution we have in mind is the following:
Enable semantic annotations in the attributed grammars to distinguish between alternatives that would produce LL(1)-conflicts. This demands some changes to Coco/R which shall be implemented as one part of this project. Having this extension installed is a requirement for using Coco/R with C#, which we plan to do in the second part of the project.
For the second part of the project, we want to use mainly the shared source implementation of the C# compiler in order to get a better understanding of how it works, and therefore be able to create an attributed C# grammar template that is fully compliant to the language definition.
The new version of Coco/R and the attributed grammar template will form a framework that provides complete parsing facilities for C# programs. Concrete applications can be instantiated from the framework by simply inserting the necessary semantic actions into the ATG template, and letting Coco/R automatically create the scanner and parser.