Hilfe: Sie befinden sich auf...

Universität Augsburg, 31.03.06

Archiv

... einer Artikelseite. Sie zeigt den vollständigen Text einer Nachricht.
Sie können auf die im Artikel enthaltenen Bilder klicken, um eine größere Version des Bildes angezeigt zu bekommen.

Am Fuß der Seite finden Sie drei Boxen mit weiteren Aktionsmöglichkeiten:
Über die linke Box können Sie zum vorhergehenden, bzw. nachfolgenden Artikel in diesem Bereich navigieren.
In der mittleren Box können Sie diesen Artikel bewerten.
In der rechten Box kommen Sie zu einer Druckversion dieses Artikels, Sie können den Link dieses Artikels an einen E-Mail-Empfänger verschicken und Sie können diesen Artikel auf einen Merkzettel legen, um ihn leichter wiederzufinden.

Hilfe: Generell zu dieser Seite

Bei NETZGUT finden Sie Nachrichten aus dem Netz.
Zu der Nachricht Ihres Interesses können Sie auf drei Wegen gelangen:

Im Archiv sind die Nachrichten nach Bereichen getrennt.
Unter Themen finden Sie Nachrichten bereichsübergreifend zu einem bestimmten Thema.
Über die Schlagworte gelangen Sie zu den Artikeln, denen eben jene Schlagworte zugeordnet wurden. Auch diese Einordnung ist bereichsübergreifend.

Übrigens: Der Hilfe-Button gibt Ihnen zu jeder Seite die passenden Informationen.

Universität Augsburg, 31.03.06

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

Raphael Romeikat
Foto: privat

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) http://code.google.com/summerofcode.html
(2) http://www.informatik.uni-augsburg.de/lehrstuehle/swt/vs/
(3) http://www.lisog.org
(4) http://php4mono.sourceforge.net
(5) http://www.heise.de/newsticker/meldung/70530.
(6) http://msdn.microsoft.com/netframework/
(7) http://sourceforge.net/projects/php4mono
(8) http://de.wikipedia.org/...iki/GNU_General_Public_License
(9) http://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


Klaus P. Prem, Universität Augsburg
Quelle: Informationsdienst Wissenschaft, http://www.idw-online.de

Weitere Artikel in diesem BereichBewerten Sie diesen ArtikelToolbox
Rätsel um Saturn-Ringe gelöst 
 Strukturen schreiben im Nanometer-Bereich / Entwicklung aus Uni-Labor zum Patent angemeldet / innoWi sucht nach Partnern in Industrie und Wissenschaft