Facebook今日發(fā)布新的開源編程語言Hack
摘要:為了讓程序員高效率地寫代碼和測試,F(xiàn)acebook的三位工程師發(fā)明了一種名為Hack的新編程語言,該語言在公司內(nèi)部已使用一年的時間。今天,F(xiàn)acebook正式將它開源與大家分享。
為了讓程序員高效率地寫代碼和測試,F(xiàn)acebook的三位工程師Bryan O’Sullivan、Julien Verlaguet和Alok Menghrajani發(fā)明了一種新的編程語言——Hack。該語言在公司內(nèi)部使用了一年時間,今天,F(xiàn)acebook正式將它開源與大家分享,鼓勵大家使用希望一起來改進它。
軟件的世界里到處都是編程語言,也不斷會有新的編程語言出現(xiàn)。但是Hack的出現(xiàn),立即讓其他語言顯得黯然失色。Hack加入了現(xiàn)代編程語言的特性,既可以實現(xiàn)PHP的快速開發(fā),又通過結(jié)合一些靜態(tài)語言元素的方式讓程序員們在程序運行之前就可以發(fā)現(xiàn)錯誤。
大約在2003年末,F(xiàn)acebook創(chuàng)始人Mark Zuckerberg選擇使用在當(dāng)時很流行的PHP編程語言來建立網(wǎng)站,這種語言不需要程序員花時間定義程序中每個變量所需要的特定參數(shù)。接下來的十年時間里,Mark Zuckerberg用自己“The Hacker Way”的編碼理念不斷鼓勵工程師們尋找改善技術(shù)的途徑,隨著Facebook發(fā)展壯大,PHP語言開始顯示出其局限性,需要更多的服務(wù)器來運行網(wǎng)站。
當(dāng)規(guī)模大了以后,最好使用像Java類的靜態(tài)語言,這樣更容易管理。去年,F(xiàn)acebook的三名工程師為了解決服務(wù)器問題,創(chuàng)建運行所有PHP代碼的虛擬機HHVM。為了進一步提高開發(fā)人員的效率,他們創(chuàng)造了一門新的編程語言,Hack就此誕生。Hack基于PHP,支持靜態(tài)和動態(tài)語言,相比動態(tài)語言編程更安全,也更易于檢查和管理。
你可以認(rèn)為Hack是PHP的新版本,它結(jié)合了動態(tài)和靜態(tài)編程語言各自的優(yōu)點,這種語言大大提高了程序員的編程效率,同時緩解了公司服務(wù)器的壓力。目前,F(xiàn)acebook系統(tǒng)的PHP代碼已全部用Hack重構(gòu)完成。