SSブログ

間違う自由 [Tech]

プログラミング言語Python.
Perlよりは Cのように見えるスクリプト言語、という程度の認識しかなかったのだけど、今回受講した edX のクラスが Python だったので初めて使ってみた。

スクリプト言語なので、簡単なことはあくまでも簡単に書けるのは普通として、スクリプト言語なのに、C++ みたいにクラス作ったり継承したりできるのは面白い。コンパイルいらないし、教育目的には便利かもしれない。

Cから派生してきた言語との大きな違いは、if文などのブロック構成を括弧じゃなくてインデントで表現することだ。長年の C/C++生活で、すっかり C言語脳になっていたので、インデントの使い方を強制される Python には最初凄くストレスが溜まった。コーディングスタイルを強制されると、基本的人権を剥奪されたような気分になってしまうのだ。

でも考えてみると、C言語ではコンパイラのために括弧、読む人間のためにインデント、と二度手間だったわけで。そして両者が食い違うリスクもあったわけで。それならインデント一本でいいじゃん、という Python はなるほど合理的ではあるね。

そしてさらによく考えてみると、Pythonは何も無茶なコーディングスタイルを要求するわけではなくて、結局Cと同じようなインデントなわけで、ただそれが処理系で使われるので間違ったらエラーになるというだけだ。Cにあって Pythonにない自由は何かというと「インデントを間違う自由」なのだ。それもまた基本的人権の一部なのか?

この広告は前回の更新から一定期間経過したブログに表示されています。更新すると自動で解除されます。