注冊 | 登錄讀書好,好讀書,讀好書!
讀書網-DuShu.com
當前位置: 首頁出版圖書科學技術計算機/網絡軟件與程序設計程序設計綜合兩周自制腳本語言

兩周自制腳本語言

兩周自制腳本語言

定 價:¥59.00

作 者: (日)千葉滋 著,陳筱煙 譯
出版社: 人民郵電出版社
叢編項:
標 簽: 程序設計 計算機/網絡

購買這本書可以去


ISBN: 9787115355645 出版時間: 2014-05-01 包裝: 平裝
開本: 16開 頁數: 285 字數:  

內容簡介

  《兩周自制腳本語言》是一本優(yōu)秀的編譯原理入門讀物。全書穿插了大量輕松風趣的對話,讀者可以隨書中的人物一起從最簡單的語言解釋器開始,逐步添加新功能,最終完成一個支持函數、數組、對象等高級功能的語言編譯器?!秲芍茏灾颇_本語言》與眾不同的實現(xiàn)方式不僅大幅簡化了語言處理器的復雜度,還有助于拓展讀者的視野。《兩周自制腳本語言》適合對編譯原理及語言處理器設計有興趣的讀者以及正在學習相關課程的大中專院校學生。同時,已經學習過相關知識,有一定經驗的開發(fā)者,也一定能從本書新穎的實現(xiàn)方式中受益良多。

作者簡介

  千葉滋 東京工業(yè)大學研究生院信息技術理工系研究科教授,兼任東京大學研究生院信息技術理工系研究科教授。著有《面向切面入門——從Java語言?面向對象步入AspectJ語言程序設計》《簡明Java程序設計——Great Ideas for Java Programming》《GUI庫機制——軟件設計案例研習》等。

圖書目錄

目 錄
第1部分 基礎篇
第1天 來,我們一起做些什么吧 1
1.1 機器語言與匯編語言 2
1.2 解釋器與編譯器 3
1.3 開發(fā)語言處理器 5
1.4 語言處理器的結構與本書的框架 6
第2天 設計程序設計語言 10
2.1 麻雀雖小、五臟俱全的程序設計語言 11
2.2 句尾的分號 12
2.3 含糊不得的語言 14
第3天 分割單詞 17
3.1 Token對象 18
3.2 通過正則表達式定義單詞 19
3.3 借助java.util.regex設計詞法分析器 22
3.4 詞法分析器試運行 27
第4天 用于表示程序的對象 30
4.1 抽象語法樹的定義 31
4.2 設計節(jié)點類 34
4.3 BNF 38
4.4 語法分析與抽象語法樹 42
第5天 設計語法分析器 44
5.1 Stone語言的語法 45
5.2 使用解析器與組合子 46
5.3 由語法分析器生成的抽象語法樹 53
5.4 測試語法分析器 59
第6天 通過解釋器執(zhí)行程序 62
6.1 eval方法與環(huán)境對象 63
6.2 各種類型的eval方法 65
6.3 關于GluonJ 69
6.4 執(zhí)行程序 72
第7天 添加函數功能 75
7.1 擴充語法規(guī)則 76
7.2 作用域與生存周期 81
7.3 執(zhí)行函數 83
7.4 計算斐波那契數 89
7.5 為閉包提供支持 90
7.6 實現(xiàn)閉包 92
第8天 關聯(lián)Java語言 95
8.1 原生函數 96
8.2 編寫使用原生函數的程序 98
第9天 設計面向對象語言 101
9.1 設計用于操作類與對象的語法 102
9.2 實現(xiàn)類所需的語法規(guī)則 103
9.3 實現(xiàn)eval方法 104
9.4 通過閉包表示對象 110
9.5 運行包含類的程序 114
第10天 無法割舍的數組 115
10.1 擴展語法分析器 116
10.2 僅通過修改器來實現(xiàn)數組 119
第2部分 性能優(yōu)化篇
第11天 優(yōu)化變量讀寫性能 123
11.1 通過簡單數組來實現(xiàn)環(huán)境 124
11.2 用于記錄全局變量的環(huán)境 127
11.3 事先確定變量值的存放位置 130
11.4 修正eval方法并最終完成性能優(yōu)化 134
第12天 優(yōu)化對象操作性能 137
12.1 減少內存占用 138
12.2 能否通過事先查找變量的保存位置來優(yōu)化性能 141
12.3 定義lookup方法 144
12.4 整合所有修改并執(zhí)行 147
12.5 內聯(lián)緩存 152
第13天 設計中間代碼解釋器 156
13.1 中間代碼與機器語言 157
13.2 Stone虛擬機 158
13.3 通過棧實現(xiàn)環(huán)境 167
13.4 寄存器的使用 170
13.5 引用變量的值 173
13.6 if語句與while語句 173
13.7 函數的定義與調用 175
13.8 轉換為虛擬機器語言 177
13.9 通過虛擬機執(zhí)行 184
第14天 為Stone語言添加靜態(tài)類型支持以優(yōu)化性能 187
14.1 指定變量類型 188
14.2 通過數據類型檢查發(fā)現(xiàn)錯誤 193
14.3 運行程序時執(zhí)行類型檢查 204
14.4 對類型省略的變量進行類型推論 208
14.5 Java二進制代碼轉換 214
14.6 綜合所有修改再次運行程序 226
第3部分 解說篇(自習時間)
第15天 手工設計詞法分析器 229
15.1 修改自動機 230
15.2 自動機程序 233
15.3 正則表達式的極限 235
第16天 語法分析方式 236
16.1 正則表達式與BNF 237
16.2 語法分析算法 238
16.3 LL語法分析 239
16.4 算符優(yōu)先分析法與自底向上語法分析 244
第17天 Parser庫的內部結構 251
17.1 組合子分析 252
17.2 解析器組合子的內部 252
第18天 GluonJ的使用方法 263
18.1 設定類路徑 264
18.2 啟動設定 265
18.3 GluonJ語言 267
18.4 功能總結 268
第19天 抽象語法樹與設計模式 271
19.1 理想的設計 272
19.2 Interpreter模式 273
19.3 Visitor模式 276
19.4 使用反射 282
19.5 面向切面語言 284

本目錄推薦

掃描二維碼
Copyright ? 讀書網 m.ranfinancial.com 2005-2020, All Rights Reserved.
鄂ICP備15019699號 鄂公網安備 42010302001612號