Ouvrir le menu principal

MacGeneration

Recherche

Hack, le « nouveau PHP » de Facebook

Anthony Nelzin-Santos

vendredi 21 mars 2014 à 12:15 • 29

Ailleurs

Créé par et pour Facebook, Hack est un nouveau langage de programmation censé palier les défauts de PHP. En développement depuis quelques années, il est d’ores et déjà utilisé par la société de Mark Zuckerberg, qui l’a rendu open source..

Hack est très proche du PHP, si proche que la plupart des fichiers PHP sont des fichiers Hack valides. Ce n’est pas un hasard : Facebook a été construit en PHP. La transition d’un langage vers l’autre est donc censée être simple — elle peut du moins être assistée par des outils créés par les ingénieurs de Facebook. Pourquoi, alors, créer un nouveau langage ?

PHP est un langage de programmation à typage dynamique : le développeur n’a pas besoin de déclarer explicitement le type des variables qu’il utilise, ce qui est simple mais peut amener des erreurs. Il s’oppose aux langages de programmation à typage statique, où il faut au contraire déclarer le type des variables, ce qui permet au compilateur de détecter d’éventuelles erreurs avant même que le programme ne soit exécuté.

À l’échelle de Facebook, les langages à typage dynamique offrent trop peu de structure pour des projets très complexes, et sont trop coûteux en ressources puisque le typage est réalisé à la volée lors de l’exécution. Mais malgré leurs avantages indéniables, les langages à typage statique peuvent être trop formels. La solution ? Bryan O’Sullivan, qui a beaucoup travaillé sur Haskell avant de développer Hack, l’a trouvé dans une troisième voie, celle des langages à typage « progressif » où le typage dynamique peut cohabiter avec le typage statique.

Hack remplacera-t-il, à terme, PHP ? Il est bien difficile de le prédire, mais il faut remarquer qu’il ne manque pas d’élégance et répond à une grande partie des critiques à l’encontre de PHP. Il est en tout cas d’ores et déjà utilisé par Facebook, qui invite les développeurs à se saisir de ses outils de conversion, voire à améliorer le langage lui-même.

Rejoignez le Club iGen

Soutenez le travail d'une rédaction indépendante.

Rejoignez la plus grande communauté Apple francophone !

S'abonner

Concours : un NAS Qnap TS-233 équipé de 2 disques WD Red 6 To à gagner !

13:00

• 149


Nintendo retarde les précommandes de la Switch 2 aux États-Unis, à cause de Donald Trump

10:51

• 45


Silence : une application pour bloquer les appels indésirables sans abonnement

10:47

• 92


Sortie de veille : Apple Intelligence finalement dispo, l’attente récompensée ?

08:00

• 7


L’administration Trump aurait-elle utilisé l’IA pour créer la formule des nouvelles taxes ?

04/04/2025 à 22:30

• 43


Promo : l'écran 4K LG UltraFine 32 avec une colonne ERGO est à 423 € (-250 €)

04/04/2025 à 22:30

• 29


Donald Trump accorde un délai supplémentaire de 75 jours à TikTok

04/04/2025 à 21:45

• 12


N'attendez pas Linux sur les M4 de sitôt : c'est visiblement douloureusement compliqué

04/04/2025 à 18:30

• 29


Microsoft a 50 ans

04/04/2025 à 17:39

• 42


Apple déploie l'audio spatial en Dolby Atmos sous Windows (mais il faut payer)

04/04/2025 à 17:00

• 11


MacBook Air : nouvelle promo sur le M4, le M2 encore au tarif canon de 899 €

04/04/2025 à 15:48

• 7


Pages ne sait plus publier un livre directement sur Apple Books

04/04/2025 à 14:45

• 8


Microsoft vend son mini PC dans le cloud, pour Windows 365

04/04/2025 à 13:15

• 21


Le SSD USB4 Corsair EX400U, parfait pour les Mac et les iPhone, en promotion

04/04/2025 à 11:45

• 11


Starlink passe à 29 €/mois avec une connexion moins prioritaire

04/04/2025 à 10:30

• 105


Ubiquiti commercialise son propre adaptateur USB4 vers Ethernet 10G

04/04/2025 à 09:51

• 3