- 90 名前:営利利用に関するLR審議中@詳細は自治スレへ mailto:sage [2012/04/08(日) 22:08:10.34 ]
- >>84
え、表現できてるでしょ? むしろ、DogもCatもAnimalsに属してるのであって、オブジェクト指向のDogとCatがAnimalの子って言う関係の方が不自然だよ そして、SnakeやLionが増えても、Animals型である限り、同じ関数が使えるし、せいぜい1つの機能に付き、一つの関数書き換えで済む(泣き声変えるために、いちいちクラスごとにvoiceメソッドを書く必要も無い) OOPLでもジェネリックやテンプレートで型ごとにメソッド書くでしょ? でもそれって、OOPLの利点じゃないと言うか、むしろ関数型言語の方が強力 voiceメソッドがAnimalクラスや、その子クラスにあるのは良いけど、animalCategoryメソッドをAnimalクラスが保持するのは不自然。そうなると、関数型では存在しない第3のクラスを作る必要が出てくる(Categoryクラスみたいな?) 関数型言語のデータはデータ。関数は関数。という関係の方が、シンプルに思える
|

|