P ++提案会创建一个更严格的方言

2019-08-21 11:37:52 来源: INeng财经

一种新的PHP方言,代号为P ++,可以作为其动态前身的更严格的变体而开发,具有更高级的功能和更少的包袱。这个提议由PHP联合创始人Zeev Suraski 在PHP社区中提出,它将拥有P ++,或者最终被称为它的任何东西,与PHP一起生活,但不受PHP历史哲学的束缚。P ++不会是一个分支,但它本质上会更严格,并且可能会更加大胆,具有向后兼容性。

现在被认为是“行李”的元素,例如短标签,可以被删除,而复杂的特征,特别是严格类型的语言,如严格的运算符或类型变量,可以添加,而不会给PHP方言带来相同的复杂性。

与PHP本身一样,P ++主要用于服务器端Web开发。计划中的PHP 8版本预计将PHP扩展到Web开发之外,具有即时引擎和与C / C ++库的互操作性。

PHP和P ++中的绝大多数代码都是相同的。大多数代码将在源代码和运行时在PHP和P ++节点之间共享。但他们会有不同的实现。二进制文件将完全相同。

目前尚不清楚的是如何将文件标记为P ++文件。它可能在顶部有一个特殊的标题。构建者还可以找到将整个名称空间标记为P ++的方法,因此框架不必将每个文件标记为P ++。

无论文件是作为PHP还是P ++执行,数据结构,Web服务器接口,关键子系统以及其他大多数都将是完全相同的代码。但是,必须维护某些代码片段的两个版本。与PHP相比,P ++可能会有额外的检查。开发人员可以在同一个应用程序中混合搭配PHP和P ++。两种方言都可以在一台服务器上运行。

如果P ++发生,那将意味着PHP的不同演变。严格和类型相关的功能可能会在P ++中出现。向后兼容的偏差将保留在PHP中。P ++和PHP都可以提供不相关的功能,例如引擎的性能改进或扩展的开发。

Zuraski指出了P ++语言的潜在选择:

坚持使用动态PHP,这是一种更严格的语言支持者不会接受的。

向更严格的PHP发展,不支持更动态语言的支持者。

分配代码库,为所涉及的每个人带来净损失。

设计一个迎合两个受众的解决方案,这是P ++提案的尝试。

对P ++提案的担忧包括:

将PHP代码转换为P ++并不是一件容易的事。这是多么真实取决于最终在P ++中的结果。

PHP工具不支持P ++。但是供应商支持P ++而不是支持粒度declare()或无限量版本可能更简单。

打破PHP兼容性。但是通过一种新的方言而不是打破PHP本身这样做可能会更加可口。

P ++与Facebook的Hack语言不同,后者是基于PHP构建的,其中:

Hack是由一家公司开发的。

Hack和随附的HHVM虚拟机没有PHP的大型分发工具。

郑重声明:本文版权归原作者所有,转载文章仅为传播更多信息之目的,如作者信息标记有误,请第一时间联系我们修改或删除,多谢。