GAE で Perl を動かせるなら

Google App Engine の Managed VMs を使って Perl を動かすのを試した。

qiita.com

github.com

単なる「やってみた」系で、内容として難しいことは何もない。動かす部分については Qiita にまとめてある。ここでは、さっさと Perl 試せば良かったという言い訳を。

むかし、前職の CTO (当時)に「言語なんてどれも一緒」的なことを言われたことがある。独学で Perl からプログラミングを始め、そのまま就職してしまった身としては、ふうんそういうものかね的な気持ちだったのだが、今はその意味が解る。

当時言わんとしていたことは、たぶんロジックレベルで大差ないということなのだと思う。仕事をする中で、そのことはもやもやとわかったつもりではいたが、自分がこの意味をきちんと理解できたのは、自前で構文解析器を書き、オレオレ言語が作れるようになったときだった。

以降、どんな言語を見ても、「それをどのように構文解析するか」ということが頭に浮かぶ。実際に解析器を書けるかということが問題なのではない。そのレベルでは、言語は大枠のカテゴリで大別されているだけで、キーワードの違いとちょっとした気の利きようだけが差異に感じられる。もちろん、実装の工夫はたくさんあるだろうが、実行方法は「言語」ではない。

こうして、(慣れの影響でPerl がいちばん読みやすいという幻想が解けてしまった。私は経緯から Perl に思い入れがあるが、今の仕事では主に C++ を使っているし、ウェブも SPA が増えて、 JavaScript ばかり書いている気がする。プライベートではその時その時で適当な言語を使っている。もう Perl であってもなくても良いのだ。

さらに GAE のような本来 PaaS である環境でも Docker コンテナが動き、言語のくびきを離れてしまった。 GAE だから Python で書くかな、みたいな発想は要らなくなった。本当の意味で「言語なんてどれでも良い」が実現しつつあるように感じる

であるならば、翻って Perl であっても良いではないか。今どきの流行りだからなどと言う理由で言語を選ぶ必然はもはやない。

おお、 GAE で nodejs 使えるのか、やってみよう!*1という前に、 Perl をやってみれば良かったのだ*2

*1:と思って最近 nodejs on GAE で遊び始めたのです。私が。

*2:という贖罪エントリでした