Python消滅しろとか生きろとか正直どうでもいい
筆者が最近「Python消滅しろ」とか「Python生きろ」の記事を見て正直どっちでも良くね?って思ったのでここで書かせていただきます。
文法の指摘について
正直「消滅しろ」側も「生きろ」側も正直な話で言うと感情論すぎる。文法は個人的には直感的でいいなとは思っている。正直これに関しては個人差があるからどうでもいいと思った。
型付けについて
確かにPythonは型付け弱い、これは正しい。筆者自身何回も型に関しては結構大変だとずっと感じていた。だから個人的に入門でPythonを使うのは正直言っておすすめはしない。理由としては以下が挙げられる。
- 静的型付けがある言語を学ぶ際結構苦労する。
- 静的型付けはバグを減らすのには貢献してくれるが、動的なためバグ減らしは大変(Pyright使えば話は変わるが、初心者はそういうの知っている人はあまりいないだろう。)。
競プロ以外に正しい使い道がない
それはどうなのだろうか、まず一つ疑問に思ったのはそう書くのであれば、なぜlinuxのカーネルで使われるのであろうか、なぜNode.jsやRustのビルドで使われているのだろうか。
Jupter notebookを批判しているが、人工知能を開発する上でtensorflowやpytorchなどではサンプルをjupyter notebook使っている。だからこれは場合によって使い分けるのが正しいため、あまり断言しない方がいい。
kernelで利用されているファイル一覧
Rustのソースからのインストールの様子
PyTorchのチュートリアルでJupyter notebookが使われている様子
教育現場でPythonが選択されていることが不幸か不幸ではないか
静的で述べた理由のように、他の言語を学ぶ際に苦労はするため、初心者が最初にやる言語ではないと筆者は思っているが、文法が意味があるように作られているため、初心者からすると直感的で分かりやすいと思う。だからこれに関してははっきりと結論は出ない。
最後に
筆者は言語って場合によって使い分けるのが正解だと思っている。例えば、JS/TSはウェブで使うなど色々シーンに分けて使い分けるべきだと思う。先ほど競プロで使いやすいって言うのであれば競プロ以外の分野は使わなければいいと思った。
Discussion