Neue Skriptsprache für die Open-Source-Plattform "Mono"

Der Augsburger Informatiker Raphael Romeikat erhält Google-Auszeichnung für die Entwicklung eines Compilers


Programmiersprachen können in der Softwareentwicklung gewöhnlich nicht einfach miteinander verknüpft werden. Wenn man nun in einer Anwendung zwei Programmiersprachen kombinieren möchte, dann müssen diese erst aufeinander abgestimmt werden. Dazu bedarf es einer Übersetzung. Nun hat sich der Informatiker Raphael Romeikat von der Universität Augsburg zum Ziel gesetzt, die Skriptsprache PHP für die die Open-Source-Plattform Mono verfügbar zu machen. Grundlage dafür ist seine von dem Suchmaschinen-Anbieter Google ausgezeichnete Diplomarbeit „Development of a PHP Compiler for Mono“.

Anfang dieses Jahres schloss Raphael Romeikat an der Fakultät für Angewandte Informatik der Universität Augsburg seine Diplomarbeit ab, die von Google im Rahmen des Programms „Summer of Code“ (1) ausgezeichnet wurde. Mit dieser Förderinitiative honoriert der Suchmaschinen-Anbieter ausgewählte Open-Source-Projekte aus aller Welt.

Romeikats Arbeit trägt den Titel „Development of a PHP Compiler for Mono“ und wurde von Prof. Bernhard Bauer am Lehrstuhl Softwaretechnik und Programmiersprachen/Programmierung verteilter Systeme (2) in Zusammenarbeit mit der Linux Solutions Group (3) betreut. Nun entwickelt Romeikat seine Ergebnisse weiter in dem Open-Source-Projekt „PHP4Mono“ (4 und 5).

PHP ist eine beliebte und weit verbreitete Skriptsprache, die besonders für Webentwicklung geeignet ist. In PHP geschriebene Skripte sind keine eigenständigen Anwendungen, sondern werden in HTML-Seiten eingebettet. Syntax und Semantik sind anderen etablierten Programmiersprachen wie „C“ und „Perl“ ähnlich, wodurch man PHP einsetzen kann, ohne sich lange einzuarbeiten. Seit kurzem sind auch moderne objektorientierte Konzepte Bestandteil des Sprachschatzes von PHP. Die wohl größte Stärke besteht darin, dass nicht nur PHP selbst frei und kostenlos verfügbar ist, sondern ebenso eine Flut von Bibliotheken und Erweiterungen, die den Zugriff auf Systemfunktionalität, Datenbanken und vieles mehr ermöglichen, ohne dass dafür eigene Programmierarbeit erforderlich ist. Eine aktuelle Umfrage belegt, dass PHP auf über 20 Millionen Domains weltweit eingesetzt wird und somit die beliebteste Skriptsprache im Internet darstellt.

Mono ist eine Open-Source-Implementierung des Microsoft „.NET Framework“ (6). Im Gegensatz zum .NET Framework ist Mono allerdings nicht nur für das Betriebssystem Windows verfügbar, sondern auch für die anderen verbreiteten Betriebssysteme Linux, UNIX, MacOS und Solaris. Dass mit Mono entwickelte Bibliotheken somit plattformübergreifend eingesetzt werden können, ist nur ein großer Vorteil. Ein weiterer Pluspunkt gegenüber Microsofts Pendant besteht darin, dass Mono nicht nur die Programmiersprache C# unterstützt, sondern auch andere wichtige Sprachen wie Java, Python und einige mehr. Ein Entwickler kann somit je nach Problemstellung diejenige Sprache verwenden, die ihm am geeignetsten erscheint, und diese mit anderen Sprachen kombinieren. Die Möglichkeit, verschiedene Programmiersprachen zu bündeln und gemeinsam einzusetzen, macht Mono somit zu einer effektiven und effizienten Umgebung für Softwarearchitekten

In Romeikats neuem Projekt „PHP4Mono“ geht es nun um die Entwicklung und Programmierung eines Compilers, eines Übersetzungsprogramms für Programmiersprachen. Ziel ist es, die beiden Welten PHP und Mono miteinander zu verbinden und die Stärken beider Seiten zu bündeln, indem PHP als weitere Sprache für Mono verfügbar gemacht wird.

Damit eine Sprache wie PHP von Mono unterstützt wird, ist ein Compiler erforderlich, der sie in eine Zwischensprache, die Common Intermediate Language (CIL) übersetzt. Dabei müssen die Sprachkonstrukte von PHP exakt mit den Möglichkeiten von CIL nachgebildet werden. CIL ist eine maschinennahe Sprache, basiert auf einer abstrakten Stackmaschine und war früher auch als Microsoft Intermediate Language (MSIL) bekannt. Auf Basis von CIL können die verschiedenen höherwertigen Sprachen kommunizieren und Informationen austauschen.

Das Übersetzungsprojekt steckt schon nicht mehr in den Kinderschuhen: Mittlerweile ist bereits die zweite Version des Compilers online verfügbar und verzeichnet zahlreiche Downloads. Das Projekt wird von SourceForge gehostet (7) und steht unter der GNU General Public License (8). Mehr Informationen, ein Tutorial und eine Auflistung der bereits realisierten und noch geplanten Features sind auf der Website von PHP4Mono (9) nachzulesen.

Mit der Sprache PHP auf der Plattform MONO ergeben sich für Anwender viele neue Möglichkeiten. Entwickler können PHP nicht mehr nur als Skriptsprache für Webseiten einsetzen, sondern ebenso als vollwertige Programmiersprache für die Entwicklung eigenständiger Anwendungen. Die wichtigen Sprachkonstrukte werden durch „PHP4Mono“ bereits unterstützt und die noch bestehenden Lücken nach und nach geschlossen. Ein besonderer Vorteil besteht darin, andere mit Mono oder dem .NET Framework entwickelte Bibliotheken direkt aus PHP heraus ansprechen zu können. Auf diese Weise können beispielsweise grafische Oberflächen direkt in PHP programmiert werden.

INTERNET-VERWEISE:
(1) code.google.com/summerofcode.html
(2) www.informatik.uni-augsburg.de/lehrstuehle/swt/vs/
(3) www.lisog.org
(4) php4mono.sourceforge.net
(5) www.heise.de/newsticker/meldung/70530.
(6) msdn.microsoft.com/netframework/
(7) sourceforge.net/projects/php4mono
(8) de.wikipedia.org/wiki/GNU_General_Public_License
(9) php4mono.sourceforge.net

KONTAKT UND WEITERE INFORMATIONEN:
Dipl.-Inf. Raphael Romeikat
Lehrstuhl Softwaretechnik und Programmiersprachen
Fakultät für Angewandte Informatik
Universität Augsburg
86135 Augsburg
Telefon 0821/598-3103
romeikat@informatik.uni-augsburg.de

Media Contact

Klaus P. Prem idw

Weitere Informationen:

http://www.uni-augsburg.de/

Alle Nachrichten aus der Kategorie: Informationstechnologie

Neuerungen und Entwicklungen auf den Gebieten der Informations- und Datenverarbeitung sowie der dafür benötigten Hardware finden Sie hier zusammengefasst.

Unter anderem erhalten Sie Informationen aus den Teilbereichen: IT-Dienstleistungen, IT-Architektur, IT-Management und Telekommunikation.

Zurück zur Startseite

Kommentare (0)

Schreiben Sie einen Kommentar

Neueste Beiträge

Ideen für die Zukunft

TU Berlin präsentiert sich vom 22. bis 26. April 2024 mit neun Projekten auf der Hannover Messe 2024. Die HANNOVER MESSE gilt als die Weltleitmesse der Industrie. Ihr diesjähriger Schwerpunkt…

Peptide auf interstellarem Eis

Dass einfache Peptide auf kosmischen Staubkörnern entstehen können, wurde vom Forschungsteam um Dr. Serge Krasnokutski vom Astrophysikalischen Labor des Max-Planck-Instituts für Astronomie an der Universität Jena bereits gezeigt. Bisher ging…

Wasserstoff-Produktion in der heimischen Garage

Forschungsteam der Frankfurt UAS entwickelt Prototyp für Privathaushalte: Förderzusage vom Land Hessen für 2. Projektphase. Wasserstoff als Energieträger der Zukunft ist nicht frei verfügbar, sondern muss aufwendig hergestellt werden. Das…

Partner & Förderer