makotan _at_ gmail dot com

Smalltalk, Clojure, Lispと並んでるのを見てふと・・・

Smalltalkは使ったこと無いけど、ClojureLISPは良い言語だと思ってる(という前提で)
言語とVMにある程度のエコシステムとお金を沢山出す人の中核部分にどれくらい深入りしてるかがその言語の寿命を決定すると思ってて
その点で言えば、COBOL、C、Javaの優位性は圧倒的だなぁ〜と
その次にPython,RubyとかVB(&.NET)とJavascriptが来て・・・・
逆に言えばそれ以外の言語とVMは今のところ結構辛い立場にありそうな気がするなと(という流れがあるなという感想)


お金を出す人が居ればそこに群がる人も出てくるので、能力とか言語の良さ云々とかとは別のところで人が集まる
結果としてその言語とVMでは生産性10倍とかそういうのが当たり前の世界になる
逆にそこまでお金を無駄遣い出しても惜しくないほどの所にその言語かVMが入り込んでるって証拠じゃ無いかと


ということは、お金が集まる言語には色んな人が集まって巨大なエコシステムが構築される
お金がそれほど集まらない言語には少数精鋭が集まって小さいながらも良質なエコシステムが構築される
という結構自然な流れがある気がする


巨大な物は小さい物に駆逐されていくイノベーションのジレンマの通りだとすると、
大量の人とお金が集まって巨大なエコシステムを持てば持つほど、次のステップでは良質なエコシステムを持ってる所に人とお金が集まるような流れになる
ただし、次の所に移る前に圧倒的な優位性を獲得した言語とVMは、大きすぎて潰せないのでそれを維持するためのお金も人も集まるので安定的継続(成長は無いとして)が見込める
小さいエコシステムのまま沢山のお金と人が集まらず次のエコシステムへ流れる事もあるのでゆっくり消滅の流れがありそう


ということで、結論としてClojureは良い言語だと思います。
そんなこと言いつつ、Elixirが後々流行りそうだと思ってます。
他の言語は・・・今後のエコシステム次第かなぁ〜
Rustはだいぶ期待してる
JSはさっさと他のに変わって欲しい
LISP(系列の言語)はある種のエンジニアが手を出すべき言語ような気はしてる
そんな感じ