注冊 | 登錄讀書好,好讀書,讀好書!
讀書網(wǎng)-DuShu.com
當(dāng)前位置: 首頁出版圖書科學(xué)技術(shù)計算機/網(wǎng)絡(luò)軟件與程序設(shè)計其他編程語言/工具實用Common Lisp編程

實用Common Lisp編程

實用Common Lisp編程

定 價:¥89.00

作 者: (美) 塞貝爾 (Sebel,P.)著,田春譯
出版社: 人民郵電出版社
叢編項:
標(biāo) 簽: 程序設(shè)計

ISBN: 9787115263742 出版時間: 2011-10-01 包裝: 平裝
開本: 16 頁數(shù): 417 字?jǐn)?shù):  

內(nèi)容簡介

  這是一本不同尋常的Common Lisp入門書。本書首先從作者的學(xué)習(xí)經(jīng)過及語言歷史出發(fā),隨后用21個章節(jié)講述了各種基礎(chǔ)知識,主要包括:REPL 及Common Lisp的各種實現(xiàn)、S- 表達式、函數(shù)與變量、標(biāo)準(zhǔn)宏與自定義宏、數(shù)字與字符以及字符串、集合與向量、列表處理、文件與文件I/O處理、類、FORMAT格式、符號與包,等等。而接下來的9個章節(jié)則翔實地介紹了幾個有代表性的實例,其中包含如何構(gòu)建垃圾過濾器、解析二進制文件、構(gòu)建ID3 解析器,以及如何編寫一個完整的MP3Web 應(yīng)用程序等內(nèi)容。最后還對一些未介紹內(nèi)容加以延伸。本書內(nèi)容適合Common Lisp 初學(xué)者及對之感興趣的相關(guān)人士。

作者簡介

暫缺《實用Common Lisp編程》作者簡介

圖書目錄

第1 章 緒言:為什么是Lisp  1
1.1 為什么是Lisp  2
1.2 Lisp 的誕生  4
1.3 本書面向的讀者  6
第2 章 周而復(fù)始:REPL 簡介  8
2.1 選擇一個Lisp 實現(xiàn)  8
2.2 安裝和運行Lisp in a Box   10
2.3 放開思想:交互式編程   10
2.4 體驗REPL  11
2.5 Lisp 風(fēng)格的“Hello, World”    12
2.6 保存工作成果  13
第3 章 實踐:簡單的數(shù)據(jù)庫  17
3.1 CD 和記錄  17
3.2 錄入CD  18
3.3 查看數(shù)據(jù)庫的內(nèi)容  19
3.4 改進用戶交互  21
3.5 保存和加載數(shù)據(jù)庫   23
3.6 查詢數(shù)據(jù)庫  24
3.7 更新已有的記錄——WHERE 再戰(zhàn)江湖  28
3.8 消除重復(fù),獲益良多   29
3.9 總結(jié)  33
第4 章 語法和語義  34
4.1 括號里都可以有什么  34
4.2 打開黑箱  34
4.3 S-表達式  36
4.4 作為Lisp 形式的S-表達式   38
4.5 函數(shù)調(diào)用  39
4.6 特殊操作符  39
4.7 宏  41
4.8 真、假和等價  42
4.9 格式化Lisp 代碼   43
第5 章 函數(shù)  46
5.1 定義新函數(shù)   46
5.2 函數(shù)形參列表   47
5.3 可選形參  48
5.4 剩余形參  49
5.5 關(guān)鍵字形參   50
5.6 混合不同的形參類型  51
5.7 函數(shù)返回值  52
5.8 作為數(shù)據(jù)的函數(shù)——高階函數(shù)   53
5.9 匿名函數(shù)   55
第6 章 變量   57
6.1 變量的基礎(chǔ)知識   57
6.2 詞法變量和閉包  60
6.3 動態(tài)變量   61
6.4 常量  65
6.5 賦值  65
6.6 廣義賦值  66
6.7 其他修改位置的方式  67
第7 章 宏:標(biāo)準(zhǔn)控制構(gòu)造  69
7.1 WHEN 和UNLESS   70
7.2 COND   71
7.3 AND、OR 和NOT    72
7.4 循環(huán)   72
7.5 DOLIST 和DOTIMES    73
7.6 DO    74
7.7 強大的LOOP   76
第8 章 如何自定義宏   78
8.1 Mac 的故事:只是一個故事  78
8.2 宏展開期和運行期  79
8.3 DEFMACRO   80
8.4 示例宏:do-primes   81
8.5 宏形參   82
8.6 生成展開式  83
8.7 堵住漏洞  84
8.8 用于編寫宏的宏  88
8.9 超越簡單宏  90
第9 章 實踐:建立單元測試框架  91
9.1 兩個最初的嘗試  91
9.2 重構(gòu)  92
9.3 修復(fù)返回值  94
9.4 更好的結(jié)果輸出  95
9.5 抽象誕生  97
9.6 測試層次體系  97
9.7 總結(jié)  99
第10 章 數(shù)字、字符和字符串  101
10.1 數(shù)字  101
10.2 字面數(shù)值  102
10.3 初等數(shù)學(xué)  104
10.4 數(shù)值比較  106
10.5 高等數(shù)學(xué)  107
10.6 字符  107
10.7 字符比較  107
10.8 字符串  108
10.9 字符串比較  109
第11 章 集合  111
11.1 向量  111
11.2 向量的子類型  113
11.3 作為序列的向量  114
11.4 序列迭代函數(shù)  114
11.5 高階函數(shù)變體  116
11.6 整個序列上的操作  117
11.7 排序與合并  118
11.8 子序列操作  118
11.9 序列謂詞  119
11.10 序列映射函數(shù)  120
11.11 哈希表  120
11.12 哈希表迭代  122
第12 章 LISP 名字的由來:列表處理  123
12.1 “沒有列表”  123
12.2 函數(shù)式編程和列表  126
12.3 “破壞性”操作  127
12.4 組合回收性函數(shù)和共享結(jié)構(gòu)  129
12.5 列表處理函數(shù)  131
12.6 映射  132
12.7 其他結(jié)構(gòu)  133
第13 章 超越列表:點對單元的其他用法  134
13.1 樹  134
13.2 集合  136
13.3 查詢表:alist 和plist  137
13.4 DESTRUCTURING-BIND   141
第14 章 文件和文件I/O   143
14.1 讀取文件數(shù)據(jù)  143
14.2 讀取二進制數(shù)據(jù)  145
14.3 批量讀取  145
14.4 文件輸出  145
14.5 關(guān)閉文件  146
14.6 文件名  147
14.7 路徑名如何表示文件名  149
14.8 構(gòu)造新路徑名  150
14.9 目錄名的兩種表示方法  152
14.10 與文件系統(tǒng)交互  153
14.11 其他I/O 類型  154
第15 章 實踐:可移植路徑名庫  157
15.1 API  157
15.2 *FEATURES*和讀取期條件化  157
15.3 列目錄  159
15.4 測試文件的存在  162
15.5 遍歷目錄樹  164
第16 章 重新審視面向?qū)ο螅簭V義函數(shù)  165
16.1 廣義函數(shù)和類  166
16.2 廣義函數(shù)和方法  167
16.3 DEFGENERIC  168
16.4 DEFMETHOD   169
16.5 方法組合  171
16.6 標(biāo)準(zhǔn)方法組合  172
16.7 其他方法組合  173
16.8 多重方法  174
16.9 未完待續(xù)  176
第17 章 重新審視面向?qū)ο螅侯悺 ?77
17.1 DEFCLASS  177
17.2 槽描述符  178
17.3 對象初始化  179
17.4 訪問函數(shù)  182
17.5 WITH-SLOTS 和WITHACCESSORS  185
17.6 分配在類上的槽  186
17.7 槽和繼承  187
17.8 多重繼承  188
17.9 好的面向?qū)ο笤O(shè)計  190
第18 章 一些FORMAT 秘訣  191
18.1 FORMAT 函數(shù)  192
18.2 FORMAT 指令  193
18.3 基本格式化  194
18.4 字符和整數(shù)指令  194
18.5 浮點指令  196
18.6 英語指令  197
18.7 條件格式化  198
18.8 迭代  199
18.9 跳,跳,跳  201
18.10 還有更多  202
第19 章 超越異常處理:狀況和再啟動  203
19.1 Lisp 的處理方式  204
19.2 狀況  205
19.3 狀況處理器  205
19.4 再啟動  207
19.5 提供多個再啟動  210
19.6 狀況的其他用法  211
第20 章 特殊操作符  213
20.1 控制求值  213
20.2 維護詞法環(huán)境   213
20.3 局部控制流   216
20.4 從棧上回退  219
20.5 多值   223
20.6 EVAL-WHEN  224
20.7 其他特殊操作符   227
第21 章 編寫大型程序:包和符號   228
21.1 讀取器是如何使用包的  228
21.2 包和符號相關(guān)的術(shù)語   230
21.3 三個標(biāo)準(zhǔn)包  230
21.4 定義你自己的包  232
21.5 打包可重用的庫  234
21.6 導(dǎo)入單獨的名字  235
21.7 打包技巧   236
21.8 包的各種疑難雜癥   237
第22 章 高階LOOP  240
22.1 LOOP 的組成部分   240
22.2 迭代控制  241
22.3 計數(shù)型循環(huán)  241
22.4 循環(huán)集合和包  242
22.5 等價?然后迭代  243
22.6 局部變量  244
22.7 解構(gòu)變量   245
22.8 值匯聚  245
22.9 無條件執(zhí)行  247
22.10 條件執(zhí)行  247
22.11 設(shè)置和拆除  248
22.12 終止測試  250
22.13 小結(jié)  251
第23 章 實踐:垃圾郵件過濾器   252
23.1 垃圾郵件過濾器的核心  252
23.2 訓(xùn)練過濾器  255
23.3 按單詞來統(tǒng)計  257
23.4 合并概率  259
23.5 反向卡方分布函數(shù)  261
23.6 訓(xùn)練過濾器  262
23.7 測試過濾器  263
23.8 一組工具函數(shù)  265
23.9 分析結(jié)果  266
23.10 接下來的工作  268
第24 章 實踐:解析二進制文件  269
24.1 二進制文件   269
24.2 二進制格式基礎(chǔ)  270
24.3 二進制文件中的字符串  271
24.4 復(fù)合結(jié)構(gòu)  273
24.5 設(shè)計宏  274
24.6 把夢想變成現(xiàn)實  275
24.7 讀取二進制對象  277
24.8 寫二進制對象  279
24.9 添加繼承和標(biāo)記的結(jié)構(gòu)  280
24.10 跟蹤繼承的槽  281
24.11 帶有標(biāo)記的結(jié)構(gòu)  284
24.12 基本二進制類型  285
24.13 當(dāng)前對象?! ?88
第25 章 實踐:ID3 解析器  290
25.1 ID3v2 標(biāo)簽的結(jié)構(gòu)  291
25.2 定義包  292
25.3 整數(shù)類型  292
25.4 字符串類型  294
25.5 ID3 標(biāo)簽頭  297
25.6 ID3 幀  298
25.7 檢測標(biāo)簽補白  300
25.8 支持ID3 的多個版本  301
25.9 版本化的幀基礎(chǔ)類  303
25.10 版本化的具體幀類  304
25.11 你實際需要哪些幀  305
25.12 文本信息幀  307
25.13 評論幀    309
25.14 從ID3 標(biāo)簽中解出信息  310
第26 章 實踐:用AllegroServe 進行Web 編程  315
26.1 30 秒介紹服務(wù)器端Web 編程  315
26.2 AllegroServe   317
26.3 用AllegroServe 生成動態(tài)內(nèi)容  320
26.4 生成HTML   321
26.5 HTML 宏  324
26.6 查詢參數(shù)  325
26.7 cookie   327
26.8 小型應(yīng)用框架  329
26.9 上述框架的實現(xiàn)  330
第27 章 實踐:MP3 數(shù)據(jù)庫  334
27.1 數(shù)據(jù)庫  334
27.2 定義模式  336
27.3 插入值  338
27.4 查詢數(shù)據(jù)庫  340
27.5 匹配函數(shù)  342
27.6 獲取結(jié)果  344
27.7 其他數(shù)據(jù)庫操作  346
第28 章 實踐:Shoutcast 服務(wù)器  348
28.1 Shoutcast 協(xié)議  348
28.2 歌曲源  349
28.3 實現(xiàn)Shoutcast   351
第29 章 實踐:MP3 瀏覽器  357
29.1 播放列表  357
29.2 作為歌曲源的播放列表  359
29.3 操作播放列表  362
29.4 查詢參數(shù)類型  365
29.5 樣板HTML   367
29.6 瀏覽頁  368
29.7 播放列表  371
29.8 查找播放列表  373
29.9 運行應(yīng)用程序  374
第30 章 實踐:HTML 生成庫,解釋器部分  375
30.1 設(shè)計一個領(lǐng)域相關(guān)語言  375
30.2 FOO 語言  376
30.3 字符轉(zhuǎn)義  379
30.4 縮進打印器  380
30.5 HTML 處理器接口  381
30.6 美化打印器后臺  382
30.7 基本求值規(guī)則  385
30.8 下一步是什么  389
第31 章 實踐:HTML 生成庫,編譯器部分  390
31.1 編譯器  390
31.2 FOO 特殊操作符  395
31.3 FOO 宏  399
31.4 公共API  401
31.5 結(jié)束語   403
第32 章 結(jié)論:下一步是什么  404
32.1 查找Lisp 庫  404
32.2 與其他語言接口  406
32.3 讓它工作,讓它正確,讓它更快   406
32.4 交付應(yīng)用程序   413
32.5 何去何從   415

本目錄推薦

掃描二維碼
Copyright ? 讀書網(wǎng) www.dappsexplained.com 2005-2020, All Rights Reserved.
鄂ICP備15019699號 鄂公網(wǎng)安備 42010302001612號