官术网_书友最值得收藏!

第二部分 Lua虛擬機和Lua API

第2章 二進制chunk

Lua是一門以高效著稱的腳本語言,為了達到較高的執行效率,Lua從1.0版(1993年發布)開始就內置了虛擬機。也就是說,Lua腳本并不是直接被Lua解釋器解釋執行,而是類似Java語言那樣,先由Lua編譯器編譯為字節碼,然后再交給Lua虛擬機去執行。相比較而言,誕生時間比Lua稍晚一些的腳本語言Ruby在出現以來的很長一段時間里一直是直接解釋執行Ruby腳本,直到1.9版(2007年底發布)才引入了YARV虛擬機。

Lua字節碼需要一個載體,這個載體就是二進制chunk,對Java虛擬機比較熟悉的讀者可以把二進制chunk看作Lua版的class文件。本章會首先對二進制chunk進行一個簡單的介紹,然后詳細討論Lua編譯器的用法和二進制chunk格式,最后編寫代碼實現二進制chunk解析,為后續章節做準備。在繼續閱讀本章內容之前,請讀者執行如下命令,把本章所需的目錄結構和編譯環境準備好。

        $ cd $LUAGO/go/
        $ cp -r ch01/ ch02
        $ mkdir ch02/src/luago/binchunk
        $ export GOPATH=$PWD/ch02
        $ mkdir $LUAGO/lua/ch02
主站蜘蛛池模板: 金秀| 福安市| 噶尔县| 汾西县| 冕宁县| 乌海市| 玉林市| 鄯善县| 平乐县| 互助| 东光县| 海南省| 潼关县| 民乐县| 南开区| 专栏| 阳高县| 武川县| 逊克县| 霍林郭勒市| 安丘市| 日喀则市| 阿鲁科尔沁旗| 南乐县| 和硕县| 平度市| 惠州市| 台江县| 屯门区| 开远市| 台州市| 吴桥县| 永兴县| 七台河市| 那坡县| 黄平县| 拉萨市| 丁青县| 永安市| 于都县| 若羌县|