一直以来,我心中有一个疑问,就是 JIT compilation 为何一直难以在 Perl 或 PHP (Zend Engine) 这类 3P Language 中实现?继 LLVM 开源后,陆续听到许多 Language VM 尝试整合 LLVM 试验并得到很好的测试数据,却一直没有被整合到正式版本中,原因究竟为何?而 Lars Bak 带领团队开发的 V8 — JavaScript JIT Compiler 却在几年内直接成功达阵。
JIT (Just-In- Time 即时编译) 并非是新技术,很多语言例如 Java 早已实现。JIT 的思想很简单,即在程序运行时动态对程序进行编译,生成平台相关的机器码(比如运行它的机器 CPU 的本地代码),从而加快程序的运行速度。
应该还能用
【外评】谷歌:从源头消除内存安全漏洞
【外评】在 RiSC-V 上运行《巫师 3》游戏
【外评】法官驳回大部分 GitHub Copilot 版权索赔要求
谷歌内部推出 SQL 中的管道(Pipe)语法
你们干扰不了我写开源代码
【外评】FreeBSD 将 Rust 纳入基本系统
【外评】电脑从哪里获取时间?
【外评】为什么 Stack Overflow 正在消失?
有时