構造化と関数型言語
時代が進むにつれて様々な技術が進歩しているように、コンピューターの世界でもソフトウェアがますます複雑化していますね。
ソフトウェアが複雑になるということは、それを構成するプログラミングも複雑化しているということです。
しかし、複雑になったプログラミングをコンピューターが理解しているとしても、プログラミングを行う人間自身が理解していなくては意味がありません。
また複雑なままでは、ソフトウェアが作動するにも廻り道しているようなものになりますしねぇ。
そこで重要となるのが、プログラミングの構造化なのですが・・・
構造化がうまくできると何に対してどんな利点があるのかというと、まず、人間が理解しやすいですよね。
プログラミングを書きやすいです。
また、デバッグも容易になりますし、使い回しも可能になります。
結果的にプログラミングコストが低くもなります。
これまでのプログラミング言語の中には、問題点の処々を部分化するにあたって、どうしても限界があるものも多々ありました。
対し、関数型言語と呼ばれる種類のプログラミング言語だと、この限界をも乗り越えています。
例えば、高階関数なんてモジュール化の点で大きな成果を上げていますからね。
これが、今日のプログラミングを成功させている要因のひとつであるとも言えるでしょう。
何が言いたいかといいますと、プログラミングには構造化が必要ですよ、ということ。
そして、構造化のためには関数型言語はなくてはならないものですよ、ということです。