Haskell入門 関数型プログラミング言語の基礎と実践
2017年9月27日紙版発売
2017年9月27日電子版発売
本間雅洋,類地孝介,逢坂時響 著
B5変形判/432ページ
定価3,608円(本体3,280円+税10%)
ISBN 978-4-7741-9237-6
書籍の概要
この本の概要
基礎文法から実践的なアプリケーション開発までしっかりわかるHaskellの入門書です。型,関数,モナド,並列並行などHaskellの重要な考え方と実際にアプリケーション開発を行うまでをわかりやすく解説しています。
こんな方におすすめ
- Haskellに入門したい人
- Haskellの基礎を学んで実践的なアプリケーション開発をしてみたい人
- 関数型プログラミングの技法を身に付けたい人
この書籍に関連する記事があります!
- 関数型プログラミングを使いこなす
- 関数型プログラミングと聞いて皆さんは何を思い浮かべるでしょうか?
本書のサンプル
本書の一部ページを,PDFで確認することができます。
- サンプルPDFファイル(917KB)
目次
第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 まとめ
この本に関連する書籍
-
実践Rust入門[言語仕様から開発手法まで]
Rustは2015年に安定版がリリースされた新しい言語です。静的型付けと関数型言語などにみられる高度な抽象化のしくみを取り入れており,高品質で再利用性の高いプログラ...
-
実践Scala入門
Scalaの言語仕様,そしてエコシステムを解説するScala入門書の決定版! 基本的な構文からはじまり,Scalaに特徴的なOption,Eitherといった型によるnull安全なプログラ...
-
[増補改訂]関数プログラミング実践入門──簡潔で,正しいコードを書くために
現場の方々に向け,関数プログラミングのエッセンスを厳選解説した入門書。関数型言語Haskellを用い,基本から,Java 8/C/C++/Python/JavaScript/Rubyをはじめ各種命令...
-
はじめてのLisp関数型プログラミング――ラムダ計算からリファクタリングまで一気にわかる
Lisp・関数型プログラミングのメリットとは何か――副作用のないプログラミングがまず挙げられます。これでバグが圧倒的に少なくなります。さらにはコードの再利用がしや...
-
プログラミング in OCaml 〜関数型プログラミングの基礎からGUI構築まで〜
OCamlは,フランスのINRIAで開発された関数型言語です。実行速度も速く,バグも作りにくい言語構造となっているため,一番実用的な関数言語といわれています。 本書は...