2006年09月29日
次の言語
「Javaの時代は終わった?(読書感想文)」というエントリーが出ております。
「Beyond Java」という、一言で言うと、「Javaの時代は終わった」というRuby賛辞の本の読書感想文なわけですが、「次の言語」というところに対して、思うところがあったので、トラバ付きでエントリーしたいと思います。(ちなみに、私は、この本を読んでいないことをお断りしておきます。)
言語には、言語特性を決定づける特徴というのがあって、それによって、使い分けされると思います。
例の一つとしては、
・C言語は、「ポインタによる、詳細なメモリ管理」により、組み込みや処理速度が要求される場面で使用される
・Javaは、「デザインパターンによる、設計と実装の依存性分離」により、大規模開発で使用される
というところがあるかと思います。(他にも、いろいろとある思いますが、ここでの論点ではないので。)
そして、Rubyに代表されるLightweight Languageの特徴としては、
・Lightweight Languageは、「(ほぼ)インストール不要による、軽快(お手軽)実行環境」
なのかなと思っていたりします。
すなわち、次の言語の特徴的な使用例を考えた場合、
・Web2.0的なあちら側にデータがあるというユビキタスな環境では、このインストール不要という概念が非常に重要になる
と思っていたりします。
Ajaxで使われているJavaScriptは、まさにそのものですので、Lightweight LanguageやVMがブラウザ(viewer)などに組み込まれてしまうというのが、一番わかりやすいところかなと思っています。(JavaApletは?というつっこみが入りそうですが。。。)
※インストール不要という概念も、「実行環境」と「アプリケーション」などがありますが、ここでは、言及しません。
※このインストール不要という使用法において、LLが最適解なのかは、別問題です。
さらに、こういう話を始めると、OSの概念(こちらなど)になってきて、そこで、JVMがどうこうという話になり、Bruce A. Tate氏が言うようにvirtual machineがキーファクターになるのではないかと思います。
- by noritsuna
- at 00:03