Pythonの立ち位置はなんとも中途半端
ScalaやLuaを知って以来Pythonの立ち位置はなんとも中途半端になってしまったなあ、という感じがします。思ってることを色々まとめてみました。
Pythonの利点?
Pythonがもともと謳っていた「Cの20倍の生産性」という言葉はもう意味の無い語でしょう。JavaでもC++でもCよりは圧倒的に生産性は高くなるはずです。よって、昔はBetter JavaとしてPythonが流行るのかなあと考えていましたがそれも見込み薄な感があります。理由は以下のとおり。
- ScalaのようなJVMで動作するJavaよりも高級な言語ができてしまった。それらの言語はBetter Javaとして十二分な性能がある。
- そもそもPythonがJavaより高級かどうかが微妙。Pythonの開発環境がEclipse+Javaの開発環境に比べて言語の差を埋めるほど優秀とはおそらく言えない。
- 動的型付けと静的型付けではパラダイムが違いすぎる
等々他にも理由は挙げられますがこの辺で。Python開発者の方々がJavaの代替を目指しているのかは分からないため、殆ど言いがかりみたいなこと言ってるなあとは思います。しかし、Javaを使う身としては、JavaからPythonに移るメリット無いなあと思うわけです。
Cの補完としてのPython?
コア部分をCで書き、modに当たる部分をPythonで書く、ということができるというものPythonを使う理由の一つだと思います。しかし、Pythonは致命的に遅いという欠陥があります。軽快で高速なLuaという組み込み言語ができてしまった以上、この方面で戦うのはかなり厳しいと思われます。