-generic- 総称的プログラミング -programming-
■ このスレッドは過去ログ倉庫に格納されています
0056デフォルトの名無しさん
NGNGParametric Polymorphismを使えば、「list of intの全要素に関数を
適用する関数」も「list of stringの全要素に関数を適用する関数」
も「list of hogehogeの全要素に関数を適用する関数」も一個の定義で
書けた。OK。万歳だ。(MLとかHaskellのmap関数)
Generic Programmingなら、「list of hogehogeの全要素に関数を
適用する関数」も「tree of fugafugaの全要素に関数を適用する
関数」も「array of piyopiyoの全要素に関数を適用する関数」も
一個の定義で書ける。いえーい。(GenericHaskellのpmap、C++のfor_each…)
とか、あくまで一例だけどな。
http://web.comlab.ox.ac.uk/oucl/research/areas/ap/topics.html#GP
C++ STLやJavaはオブジェクト指向とかカプセル化を前提にしたGenericsなんで
実体は要するにParametricPolyとAdhocPolyを巧妙に混ぜて使ってる
だけにならざるを得ないんだけど、概念としては、そーゆーこと。
■ このスレッドは過去ログ倉庫に格納されています