idw – Informationsdienst Wissenschaft

Nachrichten, Termine, Experten

Grafik: idw-Logo
Grafik: idw-Logo

idw - Informationsdienst
Wissenschaft

Science Video Project
idw-Abo

idw-News App:

AppStore

Google Play Store



Instance:
Share on: 
03/31/2006 16:48

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

Klaus P. Prem Stabsstelle Kommunikation und Marketing
Universität Augsburg

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

    (RR/TN). 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) 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/wiki/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


    Images

    Raphael Romeikat
    Raphael Romeikat
    Foto: privat
    None


    Criteria of this press release:
    Information technology
    transregional, national
    Personnel announcements, Research results
    German


     

    Help

    Search / advanced search of the idw archives
    Combination of search terms

    You can combine search terms with and, or and/or not, e.g. Philo not logy.

    Brackets

    You can use brackets to separate combinations from each other, e.g. (Philo not logy) or (Psycho and logy).

    Phrases

    Coherent groups of words will be located as complete phrases if you put them into quotation marks, e.g. “Federal Republic of Germany”.

    Selection criteria

    You can also use the advanced search without entering search terms. It will then follow the criteria you have selected (e.g. country or subject area).

    If you have not selected any criteria in a given category, the entire category will be searched (e.g. all subject areas or all countries).