- 自己動手實現(xiàn)Lua:虛擬機、編譯器和標(biāo)準(zhǔn)庫
- 張秀宏
- 735字
- 2019-01-03 15:00:03
本書主要內(nèi)容
本書主要內(nèi)容可以分為四個部分:第一部分(第1章)為準(zhǔn)備工作;第二部分(第2~13章)主要討論Lua虛擬機和Lua API;第三部分(第14~17章)主要討論Lua語法和編譯器,第四部分(第18~21章)主要討論Lua標(biāo)準(zhǔn)庫。
全書共21章,各章內(nèi)容安排如下:
? 第一部分(準(zhǔn)備)
● 第1章:準(zhǔn)備工作。
準(zhǔn)備編程環(huán)境,編寫“Hello, World! ”程序。
? 第二部分(Lua虛擬機和Lua API)
● 第2章:二進制chunk。
介紹Lua二進制chuck文件格式,編寫代碼解析二進制chunk文件。
● 第3章:指令集
介紹Lua虛擬機指令集和指令編碼格式,編寫代碼對指令進行解碼。
● 第4章:Lua API
初步介紹Lua API和Lua State,實現(xiàn)棧相關(guān)API方法。
● 第5章:Lua運算符
介紹Lua語言運算符,給Lua API添加運算符相關(guān)方法。
● 第6章:虛擬機雛形
初步實現(xiàn)Lua虛擬機,可以解釋執(zhí)行大約一半的Lua虛擬機指令。
● 第7章:表
介紹并實現(xiàn)Lua表、表相關(guān)API方法,以及表相關(guān)指令。
● 第8章:函數(shù)調(diào)用
介紹并實現(xiàn)Lua函數(shù)調(diào)用。
● 第9章:Go函數(shù)調(diào)用
介紹如何在Lua中調(diào)用Go語言函數(shù)。
● 第10章:閉包和Upvalue
介紹并實現(xiàn)閉包和Upvalue,以及Upvalue相關(guān)指令。
● 第11章:元編程
介紹并實現(xiàn)Lua元表、元方法及元編程。
● 第12章:迭代器
介紹并實現(xiàn)Lua迭代器。
● 第13章:異常和錯誤處理
介紹Lua異常和錯誤處理機制。
? 第三部分(Lua語法和編譯器)
● 第14章:詞法分析
介紹Lua語言詞法規(guī)則,實現(xiàn)詞法分析器。
● 第15章:抽象語法樹
初步介紹Lua語言語法規(guī)則,定義抽象語法樹。
● 第16章:語法分析
進一步介紹Lua語言語法規(guī)則,編寫語法分析器。
● 第17章:代碼生成
編寫代碼生成器。
? 第四部分(Lua標(biāo)準(zhǔn)庫)
● 第18章:輔助API和基礎(chǔ)庫
介紹Lua輔助API和標(biāo)準(zhǔn)庫,實現(xiàn)基礎(chǔ)庫。
● 第19章:工具庫
介紹并實現(xiàn)數(shù)學(xué)、表、字符串、UTF-8、OS等標(biāo)準(zhǔn)庫。
● 第20章:包和模塊
介紹Lua包和模塊機制,實現(xiàn)package標(biāo)準(zhǔn)庫。
● 第21章:協(xié)程
介紹Lua協(xié)程,實現(xiàn)coroutine標(biāo)準(zhǔn)庫。
- Practical Data Analysis Cookbook
- Oracle從入門到精通(第3版)
- Java程序設(shè)計(慕課版)
- Learning Docker
- Mastering Python Scripting for System Administrators
- Linux Shell核心編程指南
- Raspberry Pi Blueprints
- Vue.js 3.x高效前端開發(fā)(視頻教學(xué)版)
- Learn Linux Quickly
- Getting Started with RethinkDB
- C語言程序設(shè)計實驗指導(dǎo)教程
- Spring Microservices
- Spark for Data Science
- 設(shè)計模式之禪
- μC/OS-III源碼分析筆記