2013年8月15日木曜日

関数型、オブジェクト指向

1+1という行為に対して、
  1. 整数型の引数を二つ取り、整数型の値を返す + なる二項演算子に引数1, 1を与えようと考えるのが関数型。
  2. 整数クラスのインスタンスである1 に引数として整数クラスのインスタンスを取るメッセージ + を送ってろう(メッセージング)と考えるのがアラン・ケイ流オブジェクト指向。
  3. 整数クラスのインスタンスである1 に引数として整数クラスのインスタンスを取るメソッドを呼び出そうと考えるのがビャーネ・ストロヴストルップ流オブジェクト指向。
であろうか。模式的に書くなら
  1. add(1, 1)
  2. 1 add: 1
  3. 1.add(1)
プログラミングに関する概念は幾つかの階層に分かれるのがややこしいですね。〜(指向 or 型)プログラミング言語を用いて〜(指向 or 型)プログラミングを行う。という文章が成り立つと思います。

0 件のコメント:

コメントを投稿