このシリーズでは、関数型プログラミングの基礎を紹介します。 「関数型でプログラミングする」とは実際どういうことなのか、そしてこのアプローチがオブジェクト指向や命令型プログラミングとどう違うのかを解説します。
- 関数型思考:はじめに。関数型プログラミングの基本を見ていきます。
- 数学的関数。関数型プログラミングの原動力となる考え方です。
- 関数の値と単純な値。代入ではなく束縛について学びます。
- 関数における型の働き。型の表記法を理解します。
- カリー化。複数のパラメータを持つ関数を、より小さな1パラメータ関数に分解する技法です。
- 部分適用。関数のいくつかのパラメータを事前に設定する方法です。
- 関数の結合性と合成。既存の関数から新しい関数を作り出す技法です。
- 関数の定義。ラムダ式などについて学びます。
- 関数シグネチャ。関数シグネチャから関数の働きを推測する方法を学びます。
- 関数の整理。ネストした関数とモジュールについて説明します。
- 型に関数を付加する。F#流のメソッド作成方法を学びます。
- 実践例:スタックベースの電卓。コンビネータを使って機能を構築する例を見ていきます。