Pläne für HHVM und Hack vorgestellt

Die Zukunft von HHVM
Kommentare

Nachdem es in letzter Zeit in puncto Neuigkeiten eher ruhig um HHVM und Hack geworden war, meldet sich das Entwickler-Team nun zurück – und stellt die aktuellen Pläne für die Zukunft der HipHop Virtual Machine vor.

Zwar sind in den vergangenen Monaten einige neue Versionen von HHVM erschienen, doch insgesamt war es zuletzt verdächtig still, was Neuerungen angeht. Stattdessen kündigten beispielsweise WordPress und Symfony an, künftig auf die Kompatibilität mit HHVM zu verzichten – unter anderem weil HHVM nicht mehr die Performance-Vorteile böte, die die Arbeit damit in der Vergangenheit so verlockend gemacht hatten.

Für die HHVM-Entwickler war es darum Zeit, sich mit der Zukunft der von Facebook entwickelten HipHop Virtual Machine zu beschäftigen. In einem Blogpost hat Max Wang nun die Pläne für HHVM sowie die dafür verfügbare Programmiersprache Hack vorgestellt.

Go for PHP Developers

mit Terrence Ryan (google)

Everything you need to know about PHP 7.2

mit Sebastian Bergmann (thePHP.cc)

HHVM nimmt Abschied von PHP 5

Seit Anfang des Jahres gibt es bereits keinen aktiven Support für PHP 5.6 mehr. Derzeit erhält PHP 5.6 zwar noch Security-Support, doch auch dieser wird Ende 2018 eingestellt. Die PHP-Community nimmt also langsam aber sicher Abschied von PHP 5, und auch für HHVM soll daher in Zukunft der Support von PHP 7 im Vordergrund stehen.

Wang kündigte daher an, dass das nächste LTS-Release von HHVM – HHVM 3.24 – die letzte HHVM-Version mit PHP-5-Support sein wird. Zwar werden nicht direkt sämtliche Kompatibilitäten zu PHP 5 eingestellt, allerdings werden sie als deprecated markiert und in künftigen Versionen entfernt.

Gleichzeitig erklärt Wang aber auch, dass das vorrangige Ziel von HHVM nicht der Support von PHP 7 sein wird. Das liegt vor allem daran, dass Facebook HHVM hauptsächlich zur Ausführung von Hack nutzt und die Lösungsmöglichkeiten von Hack und PHP 7 nicht immer die gleichen sind. Darum soll der Fokus des Entwicklerteams insbesondere auf der Weiterentwicklung von Hack gelegt werden. Dazu heißt es im oben genannten Blogpost:

The HHVM team believes that we have a clear path toward making Hack a fantastic language for web development, untethered from its PHP origins.

Ebenso will man Hack und HHVM eine bessere und zugleich noch performantere Entwicklungs-Experience spendieren. Laut Wang befänden dafür bereits zahlreiche neue Features, Libraries und Performance-Möglichkeiten in der Pipeline.

Besserer Support von Hack auf HHVM

Um Hack besser auf HHVM unterstützen zu können, hat das Entwickler-Team den Fokus auf die folgenden drei Ziele gelegt:

  1. In Open Source reinvestieren
  2. Eindeutigere Erwartungen formulieren und offener kommunizieren
  3. Fokussiert bleiben und sich in Sachen Support nicht übernehmen

Vor allem Punkt 3 ist dabei interessant, bedeutet dies doch eine deutliche Abkoppelung von PHP. Darum will man in Zukunft auch nicht die „runtime of choice“ für Nutzer mit reinem PHP-7-Code sein, erklärt Wang. Langfristig soll Hack über ein eigenes Ökosystem bestehend aus Core-Frameworks verfügen, das die Arbeit mit der Sprache für Entwickler genauso einfach machen sollen, wie es derzeit mit „reinem PHP“ ist.

Darüber hinaus arbeitet das Entwickler-Team an einer Reihe von Tools und Libraries, die speziell für Hack designt werden. Dazu zählen etwa:

  • die Hack Standard Library
  • TypeAssert
  • Hack Codegen
  • XHP-Lib v2

Dazu kommen weitere Tools, wie ein Autoloader oder eine AST-basierte Library mit Tools für Linting und automatischer Codebearbeitung. Ebenso sollen einige Änderungen an Hack selbst vorgenommen werden. Dazu gehört beispielsweise die Arbeit an Hack-Arrays sowie die Ausschaltung von Destructors und References.

Einen Zeitplan beziehungsweise eine detaillierte Roadmap, wann diese Änderungen implementiert werden, gibt es übrigens noch nicht. Alle weiteren Informationen zur Zukunft von HHVM und Hack bietet der oben genannte Blogpost.

Unsere Redaktion empfiehlt:

Relevante Beiträge

Meinungen zu diesem Beitrag

X
- Gib Deinen Standort ein -
- or -