L'équipe Swoole a publié en open source TypePHP, un compilateur qui transforme le code source PHP en code machine natif. Albert Chen a signalé sur X que la sortie était intervenue plus tôt que la date d'octobre initialement prévue par le projet.

TypePHP est un compilateur ahead-of-time (AOT). Il traduit PHP en C++, puis en code machine natif. Cela diffère d'un cache de bytecode ou d'une machine virtuelle, qui interprètent les opcodes à l'exécution. TypePHP produit à la place des binaires natifs optimisés, exécutés directement sur le CPU.

Le langage conserve la syntaxe PHP habituelle et ajoute des informations de typage à la compilation, ce qui permet au compilateur d'émettre du C++ statiquement typé et rapide pour les chemins critiques. Les valeurs PHP dynamiques, les fonctions internes, la réflexion et les métadonnées d'objets restent interopérables avec le runtime Zend via PHPX. Les fonctions utilisateur compilées ne s'exécutent plus sous forme d'opcodes Zend.

TypePHP est entièrement écrit en PHP et totalement auto-hébergé : le binaire du compilateur tpc est produit en compilant le propre code source PHP du compilateur avec TypePHP. La chaîne de bootstrap ne contient aucun code C ou C++ dans le compilateur lui-même. La documentation est disponible sur swoole.com/aot/en.