パスワードを忘れた? アカウント作成
この議論は賞味期限が切れたので、アーカイブ化されています。 新たにコメントを付けることはできません。

動的リンクとGPL」記事へのコメント

  • by G7 (3009) on 2001年09月10日 2時18分 (#21076)
    >APIを定義しているヘッダーファイル

    ヘッダーなるものが存在するかどうかも、ある種の言語のありように依存した問題すね。

    あ。「そんなこと考えてどうなるってんだ?」と思われる方がいるかも知れませんが、
    別にGPLはLinuxだのUnixだの(そしてC)のモノってわけじゃないんで、
    あーゆーのと全然毛色の違う世界にも通用するものであって欲しいという願望が有るもんでして、考えたくなっていたりします。

    閑話休題。実際どうなんだろうなあ?

    動的な言語ならヘッダー的な情報をいっさい与えられずとも戦える(笑)だろうし。ObjectiveCだとどうなるんだっけ?

    Delphi/Kylixの言語はCみたいにHeader相当の情報を別ファイルにすることは可能だし。

    Javaだと別ファイルにするのは無理っすよね。APIの伝達手段という意味でHeaderに敢えて似たものを探すとすれば
    それは継承の親ClassまたはInterface(のソース)かなと思いますが、
    Javaってコンパイル結果のファイルに含まれる情報が一般的なCとかのソレより多い(よね:というかCが今時ウブなくらいに情報少ないんだけどさ)から、ソース無くてもバイナリだけで「継承」することが出来ちゃう。
    Headerの出番なし。あれれ?なんか変だな…
    #これはdelphiも同じ。

    てゆーかむしろ、Java(やC++)みたいな強型言語(ってのか)だと、字面互換なだけの偽物を書いちゃったら同名の別Classとして互換性が否定されてコンパイルエラーになっちゃうし(笑)。
    つまり、Cだと偽物のソース(Header)および偽物のバイナリでも通るけど、Javaだと本物のソースまたは本物のバイナリが必要であり、かつ両方は要らない、と。
    #だよね?javaは俺まだ浅いんで…

    なんか、C以外を考えると、凄くワケワカな世界にいっちゃうような気がする…。
    それは困るなあ…

    蛇足だけどついでに言えば、実行ファイル(とライブラリファイルの差)という概念も怪しげだしね。
    javaだとmainあればいいし、rubyとかだとargv[0]と自身の名が一致してればmainだ(暴論)し…。
    java初めて見たとき膝をたたいたんだけど、実行ファイルとlibraryファイルの差ってのが無いのね。
    #個人的にはjava方式が好き

コンピュータは旧約聖書の神に似ている、規則は多く、慈悲は無い -- Joseph Campbell

処理中...