polarphp - 新的 PHP 语言编译器和运行时


PHP
跨平台
C/C++

软件简介

为什么要做 polarphp 项目

随着GoNodeJS的强势崛起,PHP的市场份额逐渐被蚕食,而PHP官方仍然坚守在Web编程领域,有些东西越是想守住就越守不住。polarphp借鉴NodeJSGo的相关特性对zendVM重新封装,去掉PHP一些古老弃用的特性和强Web属性,通过实现一套新的运行时框架libpdk,将PHP语言打造成为一门真正的通用性脚本语言,赋能PHP,让其拥有异步编程,协程,线程,内置的unicode支持,标准的文件IO等等特性,让PHP程序员不仅仅能做web应用,也能从容面对真正的服务端应用。polarphp不是一门新的语言,而是PHP语言的一种运行时容器。

主要特性

  • 兼容最新的PHP语言标准,移除废弃语言特性

  • 内置unicode字符标准支持

  • 全功能型运行时库支持,支持异步编程,多线程和协程等等编程模式

  • 内置包管理器

  • 内置文档生成器

开发计划

因为开发资源有限,开发计划暂定如下:

  1. 使用cmakezend VM进行编译,生成polarphp定制版的PHP语言虚拟机

  2. 语言支持项目,语言测试框架,移植LLVM项目的lit测试框架

  3. 实现polarphp驱动程序,实现从命令行执行PHP代码

  4. polarphp虚拟机进行回归测试,暂定跑通PHP的语言虚拟机相关回归测试

  5. 实现polarphp的内置函数

  6. 发布核心虚拟机的docker镜像

  7. 整合libpdk运行时框架

  8. 实现人性化安装,尽量以最少的步骤进行polarphp的安装

  9. 实现包管理器

  10. 实现语言配套小工具,比如文档生成工具等等