寫着寫着,又來到了這裏。web
此次是寫仍是不寫,嗯,這是一個問題。編碼
先說點題外話,沒準也算是題內。spa
通過這段時間的代碼閱讀,分析,調試,感受本身的代碼控制力提升了一些。設計
固然了,不單是 Lua 相關的,也有其它的工做中的代碼閱讀。調試
相比之下,仍是工做中閱讀的代碼量要更大一些,更快一些。orm
究其緣由,多是工做中的代碼閱讀的目的性要更強一些吧。ci
打個比方,工做中的代碼閱讀是爲了解決某個很具體的問題。it
帶着問題去閱讀代碼,針對性更強一些。編譯
也比較容易把關注點集中在相關的代碼上,這個過程當中不自覺地就忽略了其它的不相關的代碼。form
而這個 Lua 代碼分析系列中的代碼閱讀則是另外一種狀況。
這是代碼賞析,我很想把代碼的方方面面都找到。
把那些展示出來的美好的代碼,隱藏在代碼背後的閃光點和精心的設計都挖掘出來。
看着看着就迷失了,迷失在字節碼間,在循環之中,在跳轉之時。
不知不覺間,最初的目標已經達到,甚至超越。
回顧一下最初的計劃,現在已然完成!
語法分析這塊和編譯原理的聯繫太緊密了。
若是不瞭解一點編譯原理相關的知識,硬看的話雖然能看懂,但是會很累。
LL(1) 文法仍是很直觀的,精簡的像是工藝品。
手冊的最後面有完整的語法 EBNF 。
照着看就能夠了,在實際編碼的時候有必定的轉換,不過不影響調代碼。
在 Lua4.0 的時候看了一個語法分析的輸出 "hello, world" 的代碼調用過程。
這裏就再也不重複一遍了。
Don't repeat yourself!
嗯,是的。
好像尚未開始呢,實際上已經結束了。
走了這麼久,快到終點了,忽然開始置疑比賽自己。
程序的世界,真的很精彩啊!
路漫漫其修遠兮,吾將上下而求索!