Luajit作者给的Lua源码的阅读顺序
推荐阅读顺序:
lmathlib.c, lstrlib.c: 熟悉外部C API。不要纠结于模式匹配器。只是简单的功能。
lapi.c: 查看API在内部的实现方式。只是浏览一下以获得对代码的感觉。根据需要交叉引用lua.h和luaconf.h。
lobject.h: 标记值和对象表示。首先浏览一下。你会想要一直打开这个文件的窗口。lstate.h: 状态对象。同上
lopcodes.h: 字节码指令格式和操作码定义。简单。
lvm.c:接着看主解释器循环luaV_execute。看看所有指令是如何实现的。暂时跳过细节。稍后重读。
ldo.c:调用,堆栈,异常,协同程序。阅读艰难。
lstring.c: 字符串实习。可爱,对吧?
ltable.c: 哈希表和数组。棘手的代码。
ltm.c: metamethod处理,现在重读所有lvm.c.
您可能想立即重读lapi.c.
ldebug.c: 惊喜等着你。抽象解释用于查找回溯的对象名称。也进行字节码验证
lparser.c, lcode.c: 递归下降解析器,目标是基于寄存器的VM。从chunk()开始,然后继续努力。最后阅读表达式解析器和代码生成器部分。
lgc.c: 增量垃圾收集器。慢慢来。
当您看到对它们的引用时,请阅读所有其他文件。当然不要太过深入
如果你在X-Mas之前完成并且理解了所有这些,你就会很好。代码的信息密度相当高
Luajit作者给的Lua源码的阅读顺序相关推荐
- windows下编译lua源码
http://blog.csdn.net/zjg555543/article/details/11814563 因为之前一直使用 lua for windows 来搭建lua的使用环境,但是最新的 l ...
- c++ 编译添加dll_VS2019编译lua源码
编译环境 Windows10 Microsoft Visual Studio 2019 准备工作 下载 lua 源码压缩包并解压, 其中 src 就是 lua 的源代码目录 官方下载地址 http:/ ...
- Lua源码分析 - 基础篇 - Lua源码的结构和架构图(01)
目录 一.Lua语言简介 二.Lua架构图 三.Lua源码结构 很久很久没有写博客了,一直忙于工作和项目,最近依然想静下来阅读一些好的源码.自从读完了Nginx和Memcache的源码后,对服务器端的 ...
- Lua源码分析 - 虚拟机篇 - 语义解析之Opcode执行(18)
目录 一.虚拟机篇 - 指令执行状态机luaV_execute 二.虚拟机篇 - 状态机的具体实现原理 一.虚拟机篇 - 指令执行状态机luaV_execute 在<Lua源码分析 - 主流程篇 ...
- Lua源码笔记--字符串连接
Lua源码笔记–字符串连接 文章目录 Lua源码笔记--字符串连接 1 Lua语法糖 \.\. 2 table.concat 3 string.format 4 string.rep 5. 总结 Lu ...
- 『开源』源码在线阅读工具
命名空间: Laura.SourceCode 项目名称: 源码在线阅读 项目作者: ShuXiaolong 权利所有: ShuXiaolong 项目相册: 项目截图 在线开源: 在线源码阅读 附件下载 ...
- 分享一个Android源码在线阅读的网址
分享一个Android源码在线阅读的网址 :http://androidxref.com/4.2.2_r1/
- Android系统源码在线阅读(Android4.4~Android13.0)
原文链接 Android系统源码在线阅读(Android4~Android13) Android系统源码下载.编译.刷机 玩转Android10(二)刷机操作 Android系统镜像刷机方法(一) ...
- 【2022/02/02】thinkphp源码详细阅读(一)
thinkphp源码详细阅读(一) 请求流程 从入口 index.php 开始 实例化 App ,我们看一下实例化所做的工作 设置 thinkPath. rootPath . appPath . ru ...
最新文章
- 总结sqlserver数据库性能优化相关的注意事项
- ArcGIS API for Silverlight 实现修改地图上的工程点位置
- JDBC分页查询及实现
- xxl子任务_XXL-JOB v2.1.2 发布,分布式任务调度平台
- Struts2 ActionWildcard(通配符配置)约定优于配置
- centos dhcp 服务器搭建 多vlan
- 数据库内存泄漏——A SQLiteConnection object for database '/data/data/.../databases/....db' was leaked!...
- ORM Model查询页生成
- 夏天到啦!你的mac过热怎么办?教你几招过热技巧~
- 接口没获取到就被使用_使用CompletableFuture时,那些令人头疼的问题
- 在Visual Studio中使用Visual Basic教程:创建一个控制台应用
- 二叉树之自底向上递归
- JAVA 逆向工程技术研究日志
- 神经网络梯度消失和梯度爆炸原因推导及其解决方案
- Word排版技巧分享
- 已有Microsoft365许可证,但是office无法激活
- jquery仿直播app按钮点赞特效
- (六)Activiti之实现学生请假流程
- ios 反编译 破解
- ashx输出json_se7en3_新浪博客
热门文章
- Okhttp 拦截器 请求添加公共参数、公共Headers 方法
- Optimizing radiotherapy plans for cancer treatment with Tensor Networks解读
- 小程序自定义导航栏返回主页
- 从零开始学R(三)——基本计算
- 程序员为程序员推荐:我觉得这本书不错,分享给你
- 数学物理方程课程感想
- 人脸识别 人脸实名认证
- SQL Server 2016 COMPRESS 和 DECOMPRESS 函数
- Microsoft SQL Server 2008 MDX Step by Step中关于MDX Step-by-Step.abf损坏文件的处理
- 关于将LIUNX下的图形化操作倾向WINDOWS的几个东西