Zend 創始人提議創建PHP 方言暫命名為P++
今日消息,不久前從Zend 公司離職的 Zeev Suraski 以PHP 開發組成員的身份提議要創建PHP 方言,暫命名為 P++。Zeev 表示,現有的PHP 繼續作為動態語言存在,而他提出的PHP 方言暫命名為P++,改成更嚴格的靜態語言。
他強調道,P++不是P HP的分叉。因為兩者的代碼庫完全相同,維護代碼庫的開發者也會一樣。另外,如果你安裝了PHP,那麼將安裝P++,反之亦然。
總而言之,PHP 和P++ 的絕大部分代碼都是相同的。兩者在特定差異點方面才會有不同的實現方式—— 有點類似於PHP 7 中的嚴格類型檢查模式(strict_types),只不過P++ 涉及的範圍更廣。
Zeev 還說到,動態語言和靜態語言並無對錯之分,這兩種思想都是有價值的,然而創建一種同時迎合這兩個人群的語言是一項挑戰,這也是他提出P++ 的原因之一。
所以P++ 會有什麼大膽的改進呢?據Zeev 介紹,作為PHP 的方言,P++ 會與PHP 共存,但不會背負 PHP 語言背後的歷史包袱。換句話說,這種新方言本質上可能會有更加嚴格的語法,它也會大膽移除被認為是負贅的元素,例如飽受詬病的短標籤(short tags),並添加更複雜的功能—— 尤其是那些非常適合強類型語言的特性,如此一來就無需為PHP 引入相同的複雜性。
不過 Zeev 表示目前尚不清楚該如何標記一個文件為 P++ 文件,可能是在文件頂部的添加某種特殊的header,例如:
<?p++?> <?php'Hello, world!'; ?>
此外,他們可能會找到將整個名稱空間標記為P++ 的方法,因此框架不必將每個單獨的文件明確標記為P++。
那作為開發者的我們,是否需要在PHP 和P++ 之間做出選擇?前文已提到,由於PHP 和P++ 會同時安裝,所以從這個層面來說,開發者不存在該選PHP 還是P++ 的猶豫。