インターフェースの系譜

http://d.hatena.ne.jp/JavaBlack/20071125/p4 の続き

http://d.hatena.ne.jp/sumim/20071126/p1
詳細はリンク先を参照してもらうとして,一部抜粋.

具体的な言語処理系というわけではありませんが、おそらくこれが元ネタだろうというアイデアが記された論文は見つかりました

  • Interfaces for strongly-typed object-oriented programming (1989) - ダウンロードは有料

Smalltalk-80 そのものずばりではなく、それに静的型チェックを導入した 1982 年の実験的な実装についてです。これは Smalltalk の中の人であるインガルスと ThingLab(インスタンスベースな言語で有名な SELF の元ネタになったソフトウエア)の中の人であるボーニングによる仕事です。

  • A type declaration and inference system for smalltalk (1982) - ダウンロードは有料

同時に抜粋の後半では、インターフェイスを実装と分けて考えること自体は静的型言語で比較的以前からなされていたけれど、クラスのようなエンティティとしての「インターフェイス」やその継承モデルまで言及し、それを提案したのはこの論文が初めてだという主張も(抜粋の前半と併せて)なされているようにとれました。

http://d.hatena.ne.jp/Isoparametric/20071126/1196077267

「世界最初のXXXを考案したのは誰か?」なんてことは実際、どうでも良いことなんじゃないかなあと、
言語開発者的にはどうでも良くねえよ!と叫びたいかもしれないけれど、

仕事として言語研究者や特許取得を目指した技術開発をしてる場合には結構重要なことかと.

自分がその技術の「発明者/考案者」なのか「二番煎じ」なのかは,その研究者の評価を大きく左右します.たとえば上記の例のように「〜を提案したのはこの論文が初めてだ」という形に持っていかないと,その論文は業績として評価されません.もちろん嘘はいけないので,先行技術はあらかた調べておく必要があります.*1

普通の言語開発者としては,ほとんど関係のない話だと思います.

*1:公開されるまえの特許のように非公開の先行技術やほとんど知られていない無名の日曜プログラマーによる類似技術があっても,研究としては一定の評価はえられると思う.これが特許の場合だと,先行技術が一つでもあれば,たとえその技術が非公開で一度も見たことが無くとも,後から開発された類似技術が特許として成立することはない.