今､ 私たちはプログラマーとして､ 純粋な手続き型コードからオブジェクト指向プログラミングのようなものを使ってより組織化されたコードを書くようになったことを学びました｡
また､ Smalltalkのような言語では､ クラスやオブジェクトという概念を使って､ コードを機能的な箱にまとめることができるという話もしました｡
さて､ 同じ頃､ 関数型プログラミングという別のパラダイムの考え方もあり､ schemeのような言語がこの関数型プログラミングの考え方を導入しています｡
さて､ パラダイムとは､ 私たちがコードについて考え､ コードを組織化するための方法であることを思い出してください｡
そして､ ここまでは､ オブジェクト指向プログラミングについて学びました｡
これから数回のビデオで､ この関数型プログラミングの考え方に取り組みたいと思います｡
オブジェクト指向プログラミングとはコンセプトが異なる部分もありますが､ だからといって､ どちらかを選ばなければならないとか､
どちらかが優れているとかいうことではありません｡
その代わり､ プログラマーのように考え､ それぞれにトレードオフ､ 長所､ 短所があることを理解するために､ 両方の概念を使うことができます｡
これから数回のビデオで､ そのあたりを探ってみたいと思います｡
では､ 関数型プログラミングとは何でしょうか｡
調べてみよう｡