
プログラミング言語の相関図 57
ストーリー by reo
まずはRubyの解説を読むんだ 部門より
まずはRubyの解説を読むんだ 部門より
prankster 曰く、
Programming Languages Influence Network は文字通りプログラミング言語がどのように影響し合っているかをグラフィック表示したものだ。言語にポインタを合わせると関連情報だけが表示され、ホイールを回すと拡大・縮小ができる (GIGAZINE の記事より) 。
GIGAZINE の記事では C 言語について「ラインの色からすると Java の影響を受けていることになっていますが、C 言語は 1972 年登場、Java は 1990 年代登場です。」と指摘しているが、そのような突っ込み所を探すのも一興だろう。
なお、トップページからは Human Disease Network、Programming Languages Influence Network D3 を見ることもできる。
因果関係ではなく相関関係 (スコア:2, すばらしい洞察)
だからどっちがどっちに影響を与えたのかはどうでもいいんだよ。
Re:因果関係ではなく相関関係 (スコア:4, 参考になる)
おっとすば洞つける前に、モデレータは以下のリンク(Programming Languages Influence Network から辿れるCのやや詳細な説明)を読むように
C facts [freebase.com]
Influenced By:
BCPL
B programming language
Assembly language
Fortran
PL/I
ALGOL 68
Combined Programming Language
CLACL
Java
ALGOL
「CはJavaに"Influenced"」と明記してあるのだよ。
Re:因果関係ではなく相関関係 (スコア:1)
「20世紀後半、数多ある言語の自由度の低さに絶望した有志がC言語を開発した」
と語り継がれる時代が来るのか
Re: (スコア:0)
Javaの煩雑さにうんざりした天才科学者が、Javaを無きものにしようとタイムマシンを発明して
過去にさかのぼってシンプルで使える言語を広めたんだよ。
その後Javaの誕生を阻止しようとしたが、会社はかろうじて潰せたが、言語は残ってしまったとさ。
とっぴんぱらりのぷぅ
Re: (スコア:0)
> C facts
どうもWikipediaの記事 [wikipedia.org]からのコピペらしいがウィキペでは
> Influenced by: B (BCPL, CPL), ALGOL 68, Assembly, PL/I, FORTRAN
> Influenced: Numerous: AMPL, AWK, csh, C++, C--, C#, Objective-C, BitC, D, Go, Java, JavaScript, Limbo, LPC, Perl, PHP, Pike, Processing, Seed7
とまともだな。何この劣化コピー
Re: (スコア:0)
とはいえシンタックス以外にはCとは似ても似つかぬものも多いわけだが
Re: (スコア:0)
CLACLもよく知らないと思ったら、
2000年代登場の様子 [wikipedia.org]
Re: (スコア:0)
後に出てきた言語の影響を受けて、改定・VersionUPされることは、珍しい話ではあるまい。
実際に 、C 言語が Java の影響を受けたか否かは、別として。
Re: (スコア:0)
どんどん建て増ししていって闇鍋状態になってるC++ならまだ納得できるんだけど、その辺Cはかなり保守的だからねぇ。
Re: (スコア:0)
確かに C から Java には青いパスも出ているね。
// C99 が C++ の影響を受けている、だったら納得するし。
Re:因果関係ではなく相関関係 (スコア:2)
Re:因果関係ではなく相関関係 (スコア:1)
> The single-line '//' comments of BCPL, which were not taken up in C, reappeared in C++, and later in C99.
Re: (スコア:0)
「C++がBCPLの影響を受けて、C99がC++の影響を受けた」が実態だろう。
Re:因果関係ではなく相関関係 (スコア:1)
C++ → Cなら、ほかにもいくつか思い浮かびますね。const (C++ → C89)やbool、static_assertなど。
Re: (スコア:0)
キャラクター相関図みたいなのを想像してしまった
-低級め→
←のろま-
とか
ふん、くだらん (スコア:0)
正しい歴史の理解するための図表と言うよりは単なる宗教の勢力図ですな
優遇 (スコア:0)
オープンソース系のCMSであれだけ利用されているPHPがポイントあわせないと出てこないほど扱いが酷くて(だからPHP探すの大変だったぞ)
Rubyは出ている。
海外だとそんなにRubyって優遇されているのか?
それとLispは確かに影響力はあったと思うけど過大評価されすぎ。
Re:優遇 (スコア:1)
言語が言語に与えた影響力的な指数を星の大きさに示しているだけなのでRubyはそれなりに大きくPHPはかなり小さい
それだけのこと
Re: (スコア:0)
Rubyって後発組の言語で他の言語に影響はされたけど影響を与えた言語では無いと思うぞ。
Re: (スコア:0)
確かに、RubyもPHPも「他の言語の影響を受けた言語」ポジションで、等しく「かなり小さい」扱いになるのが正しい気がする。
Re: (スコア:0)
Groovy, Mantra, Perl 6, Frink, Windows PowerShell, BeanShell, Ferite, Judoscript, URBI, Nu, Fan, D, Falcon, Ioke, CoffeeScript
Rubyの影響を受けている(とこのサイトで考えられている)言語たち
Re: (スコア:0)
ないわー・・・
これはないわー・・・
Re: (スコア:0)
Windows PowerShellってUNIX系の各種シェル(bash,cshなど)のパクリみたいでどこにRubyの影響を受けたか聞きたい。
BeanShellもJavaをスクリプト言語化させたような物でどこにRubyが影響を与えたかと
Re: (スコア:0)
PowerShellはPerlとC#を融合させたらRubyっぽくなってしまったという感じ。
スクリプトブロックがRubyの影響かも?
Re:優遇 (スコア:1)
そういう意味ではALGOLが過小評価されすぎですね. FORTRAN, COBOL, LISPといった古言語属以外は全て影響を受けていると言っても良いのでは? BNF [wikipedia.org]を使っていたら全てALGOLの影響下, と言ったら言い過ぎかもしれないけど.
Re: (スコア:0)
計算機科学上の発見はまずLispで実装されるっつーくらいだから、Lispの影響受けてない言語ってそれこそFORTRANかCOBOLの直系の子孫でしかありえないわけだしな。
Re:優遇 (スコア:1)
FORTHがLispの影響を受けていることになっているんだけど, どんな所だろう?
一応FORTHも関数型言語と言えないこともないけど…Lispが一種のポーランド記法だから, 逆ポーランド記法のFORTHも関係があるとも…?
Re: (スコア:0)
オブジェクト(データ)に対して操作する。そしてそのオブジェクトもプログラムの一部である。
こんな説明でいい?
Re:優遇 (スコア:1)
いや, FORTHって出自が(機械制御とかの)実用ツールで実装依存のところが多々あるのではっきりとは言えないんですけど, 初期のFORTH79ぐらいまではlambda関数に相当する無名関数を生成する機能がなく, あくまでもワードの定義という形でしか関数を生成できないですよね.
ですから見かけ上は関数型言語っぽいんですけど, 思想としてはLISPなんかの基礎のlambda演算とは離れたところから湧いてでたんじゃないかと.
なんか細菌と古細菌が一見似ているけど別系統の生物というぐらいには違うんじゃないかな.
Re:優遇 (スコア:1)
なるほど, つまりここで重要なのは「インタープリタ」という概念ですね. 納得です.
Re: (スコア:0)
いやいやその後のLispの直後の言語には影響は与えたけど
その後の言語は影響は与えたか?
例えば
Lispの影響を受けた言語としてA,B,Cとあったとして
そのA,B,Cの派生としてAA,BB,CCと言語が出てきたとして
AA,BB,CCにたいしてListは影響を与えた言語と言えるのか?
それを考えるとすべての言語に影響を与えた言語としてマシン語/アセンブリ言語がないのがおかしい。
Re: (スコア:0)
Re: (スコア:0)
アセンブラの影響の一部を例で言うとポインタしてCにあるし
さらにポインタが使えない多くの言語にも参照渡しとして実際には残っている。
そう考えれるとマシン語/アセンブラの影響は多くの言語に残っていると言える。
でもそれは多くの場合、マシン語/アセンブラからの影響という書き方ではなくて
C言語からの影響とされる。
そう考えるとLispの影響も直下の言語に対しては影響を与えたと言うこともできるけど
その後の派生に対して直接の影響を与えたと言っていいのだろうか?
もっと言うと論理演算だって元を正せば回路図でそれを制御するマシン語が元とも言える。
この論理演算が使えないような言語はそれこそ少数だろ。
Re: (スコア:0)
渦の中心 (スコア:0)
Lispかっこええ
大事なことなの? (スコア:0)
Cをポイントすると、ALGOL 68とAssembly Languageの下にそれぞれC--がいるんだけど。
全部は使ってないんじゃないのん (スコア:0)
Luaなんて表面的にPascalを偽装したSchemeじゃん
位置関係間違ってる
Re: (スコア:0)
>Luaなんて表面的にPascalを偽装したSchemeじゃん
Pascalに偽装したselfかjavascriptだと思ってた
継続無しだとschemeに見えない
COBOLどこー?? (スコア:0)
孤立してるんだろうな、と思ってがんばって探したんだけど見つからず。
影響度が大きさになってるとしたら、多分星屑のように小さい点なのだろうなぁ…。
Re:COBOLどこー?? (スコア:1)
COBOLをまだみつけられない、、、。
awkとRPG(はどこだ?)が繋がっていないのも納得いかない。
TeXは孤立していた (スコア:0)
COBOLを探していてTeX発見した
F#の近傍にいたけど、当たり前のように影響も非影響もなかったね
画面についたほこりと間違えそうなサイズでしたわ
Re: (スコア:0)
右下の方に一回見つけた。
今はもう探せない。
つながりのある点と線も多くなかった....かわいそうなコボル。
Re: (スコア:0)
右上のあたりにそこそこ大きい点でありました:)
Re: (スコア:0)
表示位置ランダムなんで「右下の方で発見した」って、いったら悪いが無意味な情報
Re: (スコア:0)
こんなファミコンのゲームあったな…
見たらこう思うだろう (スコア:0)
壮観だ。
いや、だからさ、 (スコア:0)
言語開発者以外がこんなのを気にしていたとして
なにか、仕事が速く終わるとか、効率が良くなるとか、あるわけ?
Re:いや、だからさ、 (スコア:1)
ただの話のタネでしょうに、何をそんなにカリカリしてるんです?
それともスラドに「仕事が速く終わるとか、効率が良くなる」ことを期待してるんでしょうか? それならそれで別にいいと思いますが、その目的で使うには費用対効果が悪い部類のサイトだと思いますので、あなたの仕事を効率よく早く終わらせるためには別サイトの利用を検討したほうがよろしいのではないでしょうか。
Re: (スコア:0)
視覚化のための視覚化 (スコア:0)
こういうのってアート的であるって以外にどれほどの意味とか価値があるんですかね?