幫助中心 | 我的帳號 | 關於我們

Haskell趣學指南(新銳編程語言集萃)

  • 作者:(斯洛維尼亞)利波瓦卡|譯者:李亞舟//宋方睿
  • 出版社:人民郵電
  • ISBN:9787115335593
  • 出版日期:2014/01/01
  • 裝幀:平裝
  • 頁數:301
人民幣:RMB 69 元      售價:
放入購物車
加入收藏夾

內容大鋼
  利波瓦卡編著的《Haskell趣學指南》是一本講解Haskell這門函數式編程語言的入門指南,語言通俗易懂,插圖生動幽默,示例短小清晰,結構安排合理。書中從Haskell的基礎知識講起,涵蓋了所有的基本概念和語法,內容涉及基本語法、遞歸、類型和類型類、函子、applicative  函子、monad、zipper及所有Haskell重要特性和強大功能。
    《Haskell趣學指南》適合對函數式編程及Haskell語言感興趣的開發人員閱讀。

作者介紹
(斯洛維尼亞)利波瓦卡|譯者:李亞舟//宋方睿
    Miran Lipovaca,斯洛維尼亞共和國盧布爾雅那城的一位電腦科學專業的學生。除了對Haskell的狂熱,他還喜歡拳擊,玩低音吉他,當然還有畫畫。

目錄
第1章 各就各位,預備!
  1.1 調用函數
  1.2 小朋友的第一個函數
  1.3 列表入門
  1.3.1 拼接列表
  1.3.2 訪問列表中的元素
  1.3.3 嵌套列表
  1.3.4 比較列表
  1.3.5 更多列表操作
  1.4 得州區間
  1.5 我是列表推導式
  1.6 元組
  1.6.1 使用元組
  1.6.2 使用序對
  1.6.3 找直角三角形
第2章 相信類型
  2.1 顯式類型聲明
  2.2 Haskell的常見類型
  2.3 類型變數
  2.4 類型類入門
  2.4.1 Eq類型類
  2.4.2 Ord類型類
  2.4.3 Show類型類
  2.4.4 Read類型類
  2.4.5 Enum類型類
  2.4.6 Bounded類型類
  2.4.7 Num類型類
  2.4.8 Floating類型類
  2.4.9 Integeral類型類
  2.4.10 有關類型類的最後總結
第3章 函數的語法
  3.1 模式匹配
  3.1.1 元組的模式匹配
  3.1.2 列表與列表推導式的模式匹配
  3.1.3 As模式
  3.2 注意,哨衛!
  3.3 where?!
  3.3.1 where的作用域
  3.3.2 where中的模式匹配
  3.3.3 where塊中的函數
  3.4 let
  3.4.1 列表推導式中的let
  3.4.2 GHCi中的let
  3.5 case表達式
第4章 你好,遞歸
  4.1 不可思議的最大值
  4.2 更多的幾個遞歸函數
  4.2.1 replicate
  4.2.2 take
  4.2.3 reverse

  4.2.4 repeat
  4.2.5 zip
  4.2.6 elem
  4.3 快點,排序!
  4.3.1 演算法思路
  4.3.2 編寫代碼
  4.4 遞歸地思考
第5章 高階函數
  5.1 柯里函數
  5.1.1 截斷
  5.1.2 列印函數
  5.2 再來點兒高階函數
  5.2.1 實現zipWith
  5.2.2 實現flip
  5.3 函數式程序員工具箱
  5.3.1 map函數
  5.3.2 filter函數
  5.3.3 有關map與filter的更多示例
  5.3.4 映射帶有多個參數的函數
  5.4 lambda
  5.5 摺疊紙鶴
  5.5.1 通過foldl進行左摺疊
  5.5.2 通過foldr進行右摺疊
  5.5.3 foldl1函數與foldr1函數
  5.5.4 摺疊的幾個例子
  5.5.5 另一個角度看摺疊
  5.5.6 無限列表的摺疊
  5.5.7 掃描
  5.6 有$的函數應用
  5.7 函數組合
  5.7.1 帶有多個參數函數的組合
  5.7.2 Point-Free風格
第6章 模塊
  6.1 導入模塊
  6.2 使用模塊中的函數求解問題
  6.2.1 統計單詞數
  6.2.2 乾草堆中的縫紉針
  6.2.3 凱撒密碼沙拉
  6.2.4 嚴格左摺疊
  6.2.5 尋找酷數
  6.3 映射鍵與值
  6.3.1 幾乎一樣好:關聯列表
  6.3.2 進入Data.Map
  6.4 構造自己的模塊
  6.4.1 幾何模塊
  6.4.2 模塊的層次結構
第7章 構造我們自己的類型和類型類
  7.1 定義新的數據類型
  7.2 成型
  7.2.1 借助Point數據類型優化Shape數據類型

  7.2.2 將圖形導出到模塊中
  7.3 記錄語法
  7.4 類型參數
  7.4.1 要不要參數化我們的汽車?
  7.4.2 末日向量
  7.5 派生實例
  7.5.1 相同的人
  7.5.2 告訴我怎麼讀
  7.5.3 法庭內保持秩序!
  7.5.4 一周的一天
  7.6 類型別名
  7.6.1 使我們的電話本更好看些
  7.6.2 參數化類型別名
  7.6.3 向左走,向右走
  7.7 遞歸數據結構
  7.7.1 優化我們的列表
  7.7.2 種一棵樹
  7.8 類型類
  7.8.1 深入Eq類型類
  7.8.2 TrafficLight數據類型
  7.8.3 子類化
  7.8.4 作為類型類實例的帶參數類型
  7.9 Yes-No類型類
  7.10 Functor類型類
  7.10.1 Maybe函子
  7.10.2 樹也是函子
  7.10.3 Either a函子
  7.11 kind與無名類型
第8章 輸入與輸出
  8.1 純粹與非純粹的分離
  8.2 Hello, World!
  8.3 組合I/O操作
  8.3.1 在I/O操作中使用let
  8.3.2 反過來
  8.4 幾個實用的I/O函數
  8.4.1 putStr
  8.4.2 putChar
  8.4.3 print
  8.4.4 when
  8.4.5 sequence
  8.4.6 mapM
  8.4.7 forever
  8.4.8 forM
  8.5 I/O操作回顧
第9章 更多的輸入輸出操作
  9.1 文件和流
  9.1.1 輸入重定向
  9.1.2 從輸入流獲取字元串
  9.1.3 轉換輸入
  9.2 讀寫文件

  9.2.1 使用withFile函數
  9.2.2 bracket的時間到了
  9.2.3 抓住句柄
  9.3 TODO列表
  9.3.1 刪除條目
  9.3.2 清理
  9.4 命令行參數
  9.5 關於TODO列表的更多有趣的事
  9.5.1 一個多任務列表
  9.5.2 處理錯誤的輸入
  9.6 隨機性
  9.6.1 擲硬幣
  9.6.2 更多隨機函數
  9.6.3 隨機性和I/O
  9.7 位元組串
  9.7.1 嚴格的和惰性位元組串
  9.7.2 用位元組串複製文件
第10章 函數式地解決問題
  10.1 逆波蘭式計算器
  10.1.1 計算RPN表達式
  10.1.2 寫一個RPN函數
  10.1.3 添加更多的操作符
  10.2 從希思羅機場到倫敦
  10.2.1 計算最快的路線
  10.2.2 在Haskell中表示道路系統
  10.2.3 實現計算最佳路徑的函數
  10.2.4 從輸入獲取道路系統
第11章 applicative函子
  11.1 函子再現
  11.1.1 作為函子的I/O操作
  11.1.2 作為函子的函數
  11.2 函子定律
  11.2.1 定律1
  11.2.2 定律2
  11.2.3 違反定律
  11.3 使用applicative函子
  11.3.1 向applicative問好
  11.3.2 Maybe applicative函子
  11.3.3 applicative風格
  11.3.4 列表
  11.3.5 IO也是applicative函子
  11.3.6 函數作為applicative
  11.3.7 zip列表
  11.3.8 applicative定律
  11.4 applicative的實用函數
第12章 Monoid
  12.1 把現有類型包裹成新類型
  12.1.1 用newtype創建類型類的實例
  12.1.2 關於newtype的惰性
  12.1.3 type、newtype和data三者的對比

  12.2 關於那些monoid
  12.2.1 Monoid類型類
  12.2.2 monoid定律
  12.3 認識一些monoid
  12.3.1 列表是monoid
  12.3.2 Product和Sum
  12.3.3 Any和All
  12.3.4 Ordering monoid
  12.3.5 Maybe monoid
  12.4 monoid的摺疊
第13章 更多monad的例子
  13.1 升級我們的applicative函子
  13.2 體會Maybe
  13.3 Monad類型類
  13.4 一往無前
  13.4.1 代碼,代碼,代碼
  13.4.2 我要飛走
  13.4.3 線上的香蕉
  13.5 do記法
  13.5.1 按我所說的去做
  13.5.2 我皮埃爾又回來了
  13.5.3 模式匹配和計算失敗
  13.6 列表monad
  13.6.1 do記法和列表推導式
  13.6.2 MonadPlus和guard函數
  13.6.3 馬的探索
  13.7 monad定律
  13.7.1 左單位元
  13.7.2 右單位元
  13.7.3 結合律
第14章 再多一些monad
  14.1 Writer?我沒聽說過啊!
  14.1.1 monad趕來營救
  14.1.2 Writer類型
  14.1.3 對Writer使用do記法
  14.1.4 給程序添加日誌
  14.1.5 低效的列表構造
  14.1.6 使用差分列表
  14.1.7 比較性能
  14.2 Reader?呃,不開玩笑了
  14.2.1 作為monad的函數
  14.2.2 Reader monad
  14.3 帶狀態計算的優雅表示
  14.3.1 帶狀態的計算
  14.3.2 棧和石頭
  14.3.3 State monad
  14.3.4 獲取和設置狀態
  14.3.5 隨機性和State monad
  14.4 牆上的Error
  14.5 一些實用的monad式的函數

  14.5.1 liftM和它的朋友們
  14.5.2 join函數
  14.5.3 filterM
  14.5.4 foldM
  14.6 創建一個安全的RPN計算器
  14.7 組合monad式的函數
  14.8 創建monad
第15章 zipper
  15.1 在樹上移動
  15.1.1 麵包屑
  15.1.2 向上走
  15.1.3 處理焦點處的樹
  15.1.4 一路走到頂端,那裡的空氣既新鮮又乾淨
  15.2 在列表上定位
  15.3 一個非常簡單的文件系統
  15.3.1 為文件系統創建一個zipper
  15.3.2 操作文件系統
  15.4 小心行事
  15.5 謝謝閱讀!

  • 商品搜索:
  • | 高級搜索
首頁新手上路客服中心關於我們聯絡我們Top↑
Copyrightc 1999~2008 美商天龍國際圖書股份有限公司 臺灣分公司. All rights reserved.
營業地址:臺北市中正區重慶南路一段103號1F 105號1F-2F
讀者服務部電話:02-2381-2033 02-2381-1863 時間:週一-週五 10:00-17:00
 服務信箱:bookuu@69book.com 客戶、意見信箱:cs@69book.com
ICP證:浙B2-20060032