○○○な人は本当に○○○しか知らないのか?
知っているか、なんてことはさほど重要ではないのではないかしらん。
そもそも、
優れたプログラマが複数言語を扱える事が多い、ということがあっても、
複数言語を扱えるから優れたプログラマだ、ということはできなくて、
例えば、「他の言語使ったことある?」
っていう質問でも、
「使ったことがある?」にどのくらいの差違があるかはわからないんじゃないかなぁ、
とか思ったりして。
自分はPerlもPHPも簡単なユーティリティ(文字列処理のね、ソース自動生成系とか)とか、
WebCGI関連(掲示板とかそういうの)くらいしか作ったことがないレベルで、
「使ったことがある?」
と言われれば「ある」と言えるけれど、
「語ることができる?」や「仕事で使うとしたらどう?」
っていうものには、うーん、となってしまう。
要するに、
ラクダ本を読んでPerlでちょっとプログラムを書いたところでわかるのは、
Perlの上澄みのようなものであって、
「使ったことある」とか「Perlは省略すごいよねー」とか言いたいだけちゃうんか、と自分に思ってしまう。
そういう意味で、
真に言語について主観に基づき*1正しく語れるのは、
余程多岐にわたるプラットフォーム経験者か、
言語設計者ではあるまいか、とか思ってしまったりした。
言語設計者が言語の成り立ちを考える意味として
まず言語を設計する際に他言語を自分が作ろうとしている言語と並び立つ存在として見るということを除けば
本当にその言語を「使った」といえるのは実は大変な事なんじゃないかしらん?
自分はPythonで仕事のツールをよくつくるけれど、
Pythonを使ったとは言えても使いこなしているとは言い難い。
なのでPythonの仕事、となったら自信を持って大丈夫と言えるかは疑わしい。
故に「使った」というのも何となく言いづらいものがある。
CやC++ならそれなりに自信があると言いたいけれども。
まぁ、CやC++だって、長年仕事で使っているけれど、
未だに知らないことだらけなんで、使いこなしているなんてことは言えない訳なんですけどね。
*1:客観ではない