コンクリートなお話が好き

ありがたいことに、

Objective-Cでは「Interfaceの元となるアイデアを思いつき実現していた」とは言えるが,それをもって「(型としての)Interfaceを実現していた」と断言するのは言い過ぎ

の部分について、なぜ「それをもって『(型としての)Interafaceを実現していた』と断言するのは言い過ぎ」と考えていて、Java側の視点で掘り下げると Interface とはこういうものだ、という風に説明していただけると嬉しい次第。

を掘り下げていただいたり。同時に

トラックバック先エントリで「マニュアルにも載ってない」と切って捨てた Objective-Cプロトコルですが、Objective-C なんてメジャーな言語ですから、使ってた人なんていっぱいいるので、実際の話だって聞けるでしょう。

この議論は絶対面白いものになるハズ、、と私は思っています。

も適ってしまった。そうそう、こういうのが読みたかったんです♪

http://d.hatena.ne.jp/t_yano/20071202/1196601869

ええとあまりこの議論に参戦する気もないんですけど、Macでプログラムに夢中になって今でもObjective-CMac OS Xのプログラムを作りつつもJavaラブな私の感想などを。

http://d.hatena.ne.jp/t_yano/20071202/1196601869

JavaのInterfaceの発想がObjective-CのProtocolからきてるのは薄々感じていました。似てますからね。使ってればすぐに似ていることに気がつく。一方で、両方触ってる私からみて、同じものだという感じもなかった。

ふみふみ

そういう意味で、ProtocolとInterfaceは両方を使ってるプログラマとして「違う」と言わざるを得ない。ProtocolはObjective-Cという言語上は脇役で便宜上必要となった存在っぽいけど、Interfaceは「便宜上」ではなく言語としての思想にまで関連して導入されている感じがする。InterfaceはProtocolの考え方を主役にまで格上げした存在と言ったらいいのかな。

なるほどー。こういう話は大好きです。ありがとうございます。こういう展開になって初めて、

「いやいや、Interfaceを言語仕様レベルで主役の押し上げた言語が実は!!」という話があるなら純粋にとても興味があるので教えてください。

と話が進もうというものです。ああ、面白くなってきた!