h2tp, der Hack Transpiler
Kommentare

Facebooks Team hinter der eigens entwickelten und auf PHP aufbauenden Sprache Hack hat mit h2tp den Hack Transpiler veröffentlicht. Mit diesem Tool bietet der Social-Media-Riese all jenen ein gutes Argument,

Facebooks Team hinter der eigens entwickelten und auf PHP aufbauenden Sprache Hack hat mit h2tp den Hack Transpiler veröffentlicht. Mit diesem Tool bietet der Social-Media-Riese all jenen ein gutes Argument, die die Vorteile der Sprache in der Entwicklung nutzen, den Code am Ende aber auf der PHP-Engine ab Version 5.4 einsetzen wollen. Denn genau das war bisher nicht möglich.

h2tp

Wer für seine Projekte die HipHop Virtual Machine einsetzte, konnte problemlos PHP-Code darauf laufen lassen – sogar der fließende Übergang in Applikationsteile, die in Hack geschrieben sind, stellt kein Problem dar.

In die andere Richtung ist das allerdings nicht möglich. Obwohl Hack auf PHP aufbaut und sehr viele Gemeinsamkeiten existieren, bietet Facebooks Sprache viele Konstrukte, die in PHP so nicht existieren und daher nicht einfach abstrahiert werden können.

Abhilfe schafft nun der Hack Transpiler h2tp; eine Kombination aus einem simplen Kommandozeilentool und einer Bibliothek mit PHP-Funktionen und Klassen, die im transpilierten Projekt eingebunden werden sollte, um eine vollstände Funktionalität zu gewährleisten. Als Einsatzgebiet sieht das Team folgendes Szenario:

The intended use case for the Hack transpiler is to be able to convert your code to Hack and the richness of types and functionality it offers, but also ensure that customers of your code that have not yet converted to HHVM are still able to seamlessly continue to operate successfully.

Hack auf der PHP-Engine

Mit h2tp ist es möglich, Hack-Code in PHP zu transpilieren. Der generierte Code ist dann auf der Engine ab PHP 5.4 lauffähig. Natürlich gilt dabei, dass die Verwendung von Features, die nur in bestimmten PHP-Versionen verfügbar sind – beispielsweise der Splat-Operator – dazu führt, dass der Code auch nur (in diesem Beispiel) ab PHP 5.6 nutzbar ist.

Der Hack Transpiler h2tp ist seit dem 11. November Bestandteil der Nightly Builds der HHVM, erst mit dem Release der HipHop Virtual Machine in Version 3.5 wird es auch in den regulären Veröffentlichungen mitgeliefert. Dem Anfang September abgegebenen LTS-Versprechen folgend, dürfte das ab Januar 2015 der Fall sein.

Mit diesem Tool hat Facebook auf alle Fälle ein nicht zu unterschätzendes Argument in der Hinterhand, wenn es darum geht, die Verbreitung der eigenen Sprache voranzutreiben. Die Vorteile der einen Sprache zu nutzen und dabei dennoch bei Bedarf voll kompatibel zur PHP-Engine zu bleiben, dürfte bestimmt vor allem für größere Projekte von Interesse sein.

Weitere Hintergründe zur Funktionsweise bietet die offizielle Ankündigung, eine Übersicht über die Verwendung, die Voraussetzungen und die Hacklib findet man in der Dokumentation.

Aufmacherbild: One Way Sign and Arrow on Concrete von Shutterstock / Urheberrecht: mguttman

Unsere Redaktion empfiehlt:

Relevante Beiträge

Meinungen zu diesem Beitrag

X
- Gib Deinen Standort ein -
- or -