Hack: új programnyelvet mutatott be a Facebook

A Facebook a vállalat profiljától eltérően most nem a közösségi oldal funkcionalitását bővítette vagy a kinézeten csiszolt, hanem egy új programnyelvet jelentett be. A Hack (ami egyértelmű utalás a Facebook-alapító Mark Zuckerberg „The Hacker Way” termékfejlesztési hitvallására) egy HHVM-re (Hip Hop Virtual Machine) kifejlesztett nyelv, amiben egyszerre van lehetőség statikus és a dinamikus típusmegadás használatára – a gradual typingról hozzáértők bővebben itt olvashatnak egy angol nyelvű összefoglalót Jeremy Siek, a gradual typing egyik kitalálójának tollából. A Facebook közzétett egy nyílt forráskódú verziót, és arra bátorítanak minden kísérletező kedvű programozót, hogy ne csak használja, hanem lehetőség szerint fejlessze is a programnyelvet.

A Hacket nagyon szoros szálak fűzik a PHP-hez, ami nem csoda, hiszen a közösségi oldal az első kódsorok megszületése óta ezen a nyelven íródott, és a Facebook közel egy évtizeden át kitartott mellette. A PHP ugyanis megfelelt a fentebb említett hacker módszernek, azaz a nagyon gyors és folyamatos fejlesztésnek, állandó kísérletezésnek. A programozókat nem hátráltatták a statikusan típusos nyelvek szigorúbb típusdeklarálási szabályai és a típusellenőrzésre fordított idő. Az oldal azonban időközben hatalmasra nőtt, és egyre több gondot okozott a PHP – az ideálisnál nagyobb volt az erőforrásigénye, és nehéz volt a kódot tisztán, hibamentesen tartani. Az első lépés a megoldás felé a HHVM létrehozása volt, majd ennél is tovább mentek, és a létrehozták a Hacket, ami megpróbálja ötvözni a statikus és dinamikus világ előnyeit.

A típusellenőrző egy helyi szerverként működik, ami folyamatosan figyeli a fájlrendszert, és a teljes forráskódot a rendszermemóriában tárolja. Amint változik valami egy fájlban, a memória tartalmát is azonnal aktualizálja. Az új típusellenőrzési módszer a Facebook szerint 0,2-1 másodperc közötti időt vesz csak igénybe, így nem, vagy csak alig észlelhető mértékben befolyásolja a programozók megszokott munkamenetét. A Hack a PHP-hez képest számos területen többet tud, az újdonságokról részletesen (oktatóanyagokkal kiegészítve) itt lehet tájékozódni.

Azóta történt

Előzmények