Ein Add-In zur Unterstützung von Coco/R in SharpDevelop

Dieses Projekt ist als Bakkalaureatsprojekt (Studienkennzahl 521) gedacht.


Im Rahmen eines Projektes [1] mit der Shared Source Implementierung der Common Language Infrastructure (CLI) (Codename Rotor) [2] wurde der Compilergenerator Coco/R [3] dahingehend erweitert, dass er nun nicht mehr nur LL(1)-Grammatiken verwenden, sondern auch Schritte zur Auflösung von LL(1)-Konflikten setzen kann.

SharpDevelop [4] ist eine gratis .NET-Entwicklungsumgebung für C# und VB.NET, die zur G&auuml;nze in C# entwickelt wurde. Der gesamte Quellcode ist unter GPL verfügbar.

Ziel

Um Coco/R für C# sowie die attributierte C#-Grammatik komfortabler bei der Entwicklung von .NET-Programmen einsetzen zu können, soll er ähnlich wie der C#-Quellcodeeditor in die Entwicklungsumgebung SharpDevelop [4] eingebunden werden, d.h.:

  • es soll die Coco/R-Syntax durch Syntaxhighlighting besser lesbar gemacht werden
  • innerhalb der Syntaxregel sowie der semantischen Aktionen soll Code-Completion unterstützt werden
  • Die Generierung des Parsers mit Coco/R soll direkt aus der IDE gestartet werden können
  • die von Coco/R erzeugten Klassen (Scanner, Parser, ...) sollen direkt in einem Projekt verwendet werden können

Außerdem soll in der schriftlichen Arbeit die Entwicklung von Add-Ins für SharpDevelop beschrieben (vgl. [5]) und kritisch betrachten werden.

Referenzen

[1] SSCLI-Project: Compiler Generation Tools for C#
[2] .NET Rotor (SSCLI)
[3] Compiler Generator Coco/R
[4] SharpDevelop @ic#code
[5] SODA - SharpDevelop Open Development Architecture

Betreuer: Dipl.-Ing. Albrecht Wöß
Beginn der Arbeit: noch nicht vergeben
Abgabe: 1. Juli 2003
Bearbeiter: noch nicht vergeben