有人可以解释Lua的口译员,为什么这么快?

前端之家收集整理的这篇文章主要介绍了有人可以解释Lua的口译员,为什么这么快?前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我一直在查看 Lua’s standalone interpreter的源代码,到目前为止我还没有能够理解它.

也许我的谷歌搜索技能已经磨损,但我无法找到一个很好的解释,它是如何工作的. Lua的代码似乎针对性能进行了优化,而不是可读性.

解决方法

速度感知有两个来源:脚本编译和脚本执行.

脚本编译使用递归下降解析器与优先表达式解析器相结合.见http://www.lua.org/source/5.1/lparser.c.html.

脚本执行解释虚拟机的指令.这台机器很快,因为它专门用于Lua的语义,也因为它是一个基于寄存器的虚拟机,比早期版本的Lua中使用的基于堆栈的虚拟机更快.见http://www.lua.org/source/5.1/lopcodes.h.html.

猜你在找的Lua相关文章