Archiv für das Schlagwort (Tag): 'Interpreter'

Dez

21

PHP: Interpretiert oder vll. doch lieber kompiliert?

Kategorie(n): PHP - 3 Kommentare

PHP wird ja gerne als Skriptsprache für Kiddies abgestempelt (darüber zu diskutieren lohnt nicht!). Was vielen eher unbekannt ist, es gibt schon länger einen Compiler: Roadsend PHP. Roadsend PHP ist eine quelloffene und eigenständige (basiert nicht auf der ZendEngine) Implementierung der (Skript-)Sprache PHP und ermöglicht es eigenständig lauffähige Programme zu erzeugen (Binaries, es wird zur Laufzeit kein Interpreter mehr benötigt). Es werden weite Teile von PHP4/5, sowie einige Erweiterungen unterstützt. Aktuell findet ein Rewrite unter C++/LLVM statt.

Neu (wobei es das Konzept dazu auch schon eine Weile gibt) ist phc. Hier wird der PHP-Code in C-Code übersetzt und dann durch den GCC gejagt. Das Ergebnis ist auch hier ein natives Binary. Zusätzlich lässt sich mit phc der Sourcecode auch zum Einen „aufhübschen“ (pretty-print) bzw. zum Anderen unleserlich machen (obfuscate).

Der Vorteil?

Nun, zum Einem muss man den Sourcecode bei einem kleinen Kommandozeilen-Skript nicht mehr herausgeben und ist auch nicht mehr auf die Installation des Interpreters angewiesen (mir ist durchaus bekannt, das es für PHP entsprechende Encoder gibt, doch deren Byte-Code/Zwischencode lässt sich deutlich leichter „entschlüsseln“).

Zum Anderen lassen sich damit z.B. eigene Bibliotheken/Extensions schreiben und damit Performancegewinne zur Laufzeit realisieren. Sicherlich sind diese Extensions nicht das Mass der Dinge, und mit Handarbeit (am C-Code) dürfte sich noch einiges an zusätzlicher Perfomance gewinnen lassen, aber für den „einfachen“ PHP-Entwickler dürfte dies ein einfacher Einstieg in die Extensions-Entwicklung sein.

Archiv

Zufällige Bilder

  • X-Moto: Screenshot
  • Gran Turismo 5 - Abbazia-San-Galgano
  • hdtune: ST9250421ASG

Kommentare (28 Tage)

Sonstiges


Bloggeramt.de