Haskell入門 関数型プログラミング言語の基礎と実践
- 本間雅洋,類地孝介,逢坂時響 著
 - 定価
 - 3,608円(本体3,280円+税10%)
 - 発売日
 - 2017.9.27
 - 判型
 - B5変形
 - 頁数
 - 432ページ
 - ISBN
 - 978-4-7741-9237-6 978-4-7741-9299-4
 
概要
基礎文法から実践的なアプリケーション開発までしっかりわかるHaskellの入門書です。型、関数、モナド、並列並行などHaskellの重要な考え方と実際にアプリケーション開発を行うまでをわかりやすく解説しています。
こんな方にオススメ
- Haskellに入門したい人
 - Haskellの基礎を学んで実践的なアプリケーション開発をしてみたい人
 - 関数型プログラミングの技法を身に付けたい人
 
目次
第1章 はじめてのHaskell
- 1.1 Haskell の特徴
 - 1.2 実行環境の構築
 - 1.3 REPL とスクリプトの実行
 - 1.4 プロジェクト作成とビルド
 
第2章 基本の文法
- 2.1 文法の特色
 - 2.2 基本のデータ型
 - 2.3 変数
 - 2.4 関数
 - 2.5 main 関数とdo 式
 - 2.6 条件分岐とパターンマッチ
 - 2.7 データ構造
 - 2.8 ループの実現
 - 2.9 モジュールとパッケージ
 
第3章 型・型クラス
- 3.1 型の記述
 - 3.2 型システム
 - 3.3 型コンストラクタと型変数
 - 3.4 代数的データ型
 - 3.5 レコード記法
 - 3.6 再帰的な定義
 - 3.7 型の別名
 - 3.8 型クラス
 - 3.9 型制約
 - 3.10 Preludeにおける型クラス
 
第4章 I/O処理
- 4.1 IO 型
 - 4.2 コマンドライン引数と環境変数
 - 4.3 入出力
 - 4.4 ファイルシステム
 - 4.5 例外処理
 
第5章 モナド
- 5.1 モナドアクション
 - 5.2 Monad の性質を利用する
 - 5.3 Functor とApplicative
 - 5.4 Either eモナドとExcept e モナド
 - 5.5 Reader r モナド
 - 5.6 ST s モナド
 - 5.7 リストモナド
 - 5.8 モナド変換子
 
第6章 関数型プログラミング
- 6.1 型とプログラミング
 - 6.2 関数による抽象化
 - 6.3 代入文と変数の局所性
 - 6.4 型クラスと拡張性
 
第7章 ライブラリ
- 7.1 標準ライブラリ
 - 7.2 GHCに付属するライブラリ
 - 7.3 効率的な文字列操作 ─ ByteString・Text
 - 7.4 高速にランダムアクセス可能な配列 ─ vector
 - 7.5 高速なパーサ ─ attoparsec
 - 7.6 型安全なJOSN 操作 ─ aeson
 - 7.7 日付・時刻を扱う ─ time
 - 7.8 複雑なデータ構造への効率的なアクセス ─ lens
 - 7.9 モナドによるDSL の実現 ─ operational
 - 7.10 ストリームデータ処理 ─ pipes
 
第8章 並列・並行プログラミング
- 8.1 並列と並行
 - 8.2 MVarによるスレッド間の通信
 - 8.3 STM によるスレッド間の通信
 - 8.4 非同期例外
 - 8.5 より安全な非同期 ─ async
 - 8.6 並列性を実現するライブラリ
 
第9章 コマンドラインツールの作成
- 9.1 開発の準備
 - 9.2 HUnit による自動テスト
 - 9.3 パーサの作成
 - 9.4 クエリの実行とIO 処理
 - 9.5 まとめ
 
第10章 Webアプリケーションの作成
- 10.1 Web アプリケーション環境の選定
 - 10.2 開発の準備
 - 10.3 モデルの開発
 - 10.4 コントローラの開発
 - 10.5 ビューの開発
 - 10.6 実行ファイルの作成
 - 10.7 まとめ
 
第11章 サーバとクライアントの連携
- 11.1 開発の準備
 - 11.2 クライアント・サーバシステムの簡易実装
 - 11.3 オークションシステムの構築
 - 11.4 オークションシステムのクライアントプログラム
 - 11.5 まとめ
 
プロフィール
本間雅洋
株式会社フリークアウト所属。北海道苫小牧市出身。PerlとGo言語を使って広告システムを構築する傍らで、Haskellを普及させるべく機会をうかがっている。著書に「FFmpegで作る動画共有サイト(毎日コミュニケーションズ、共著)」、訳書に「実用Git(オライリージャパン、共訳)」、他Web媒体等での執筆多数。
Twitter:@hiratara
GitHub:hiratara
類地孝介
FIVE Inc.所属。Haskellを好み、Haskellの機能の実務上での意義を考え、それらをまとめてHaskell勉強会等で発表している。業務では主にScalaを書いている。
Twitter:@ruicc
GitHub:ruicc
逢坂時響
株式会社オンザロード所属。プログラマとして経験を積みながら独自にHaskellを学習し有用性を訴える。 lensやOperationalモナド等、抽象度の高い概念の活用や解説が得意。ブログやSNS、勉強会等を通して広くHaskellの普及活動を行っている。
Twitter:@its_out_of_tune
GitHub:tokiwoousaka