国外大牛,正常疯狂的尝试把PHP代码,编译成Rust,然后你就可以编译为原生可移植性应用程序了。

你们中的一些人可能已经知道我一直在用 Rust 编写一个手写的 PHP 解析器。该项目称为Trunk( GitHub 上的源代码)。
在撰写这篇博文时,我已经在解析器上工作了几个星期,并且已经取得了长足的进步。它能够解析函数、类、接口等等。它距离成为与 Nikita 的nikic/php-parser包相当的兼容 PHP 解析器还有很长的路要走,但到目前为止,这段旅程很有趣,令人惊讶的是,通过解析一种语言的语法,您可以发现许多奇怪的事情。
由于解析器现在能够处理一些基本程序,因此我认为值得一试,看看 API 是什么样的并寻求改进。Dogfooding,如果你想要一个词。
我最初的计划是为该语言开发一个实验性的运行时和解释器。这是一项艰巨的任务,此时新的运行时几乎没有什么好处。
相反,我开始考虑 PHP 的编译器。在执行时间 (AOT) 之前运行的东西。我的朋友Tim Morgan是Natalie的创建者,它是一种 Ruby 语言的实现,可以编译成 C++,然后编译成本地 二进制 文件。在过去一年左右的时间里,我为 Natalie 做出了一些贡献,这确实鼓舞了 Tim 所做的工作。
您可能会看到这是怎么回事…
受到 Tim 在 Natalie 上的工作的启发,我将开始一个实验,我将使用我的手写 PHP 解析器并尝试编写一个编译器,将 PHP 代码转换为 Rust,然后使用rustc编译就行了。
最近发表
热评文章
热门文章
Linux怎样优化网络带宽使用
2025-04-20
如何手工制作台历?简单步骤与创意设计指南
2025-04-19
如何查询他人身份证号码?合法途径与注意事项解析
2025-04-19
Windows防火墙打不开怎么办?全面解决方法
2025-04-14
Linux设置环境变量的方法?linux设置环境变量的命令
2025-04-11
CentOS与Aliyun Linux有什么区别?如何选择最佳方案?
2025-03-24