Schemeは盆栽言語か?

新山さんが、どのような意図で「盆栽言語」と書き残したかについては、とりあえず気にせずに、自分も、Schemeが盆栽言語かどうかを考えてみた。
(何故、そんな事を考えるのかと言うと、Schemeで仕事をする為の、他人への言い訳に使えるかも知れないと考えて。)


Schemeでプログラムを書いていると、他の言語(少なくともperl)よりは確実に、
「ここは末尾再帰に最適化できるな」
「このようにした方がportableだ」
「ここは、副作用を用いないように書き直した方がよい」
等と、思う事が多々ある。
この事は、「より良いコードを書く(書いてしまう)」という事につながるので、一見、良い特性のように見える。
しかし、開発の初期に於いては、「より良いコードを書く」事よりも、「(自分の気力が無くなる前に)とりあえず動作する状態まで完成させる事」が非常に重要である。
(この点については、おそらく、大いに納得してくれる人と、全く納得してくれない人に、二分されると思う。とりあえず自分は、前者に属する(或いは、属したい)という事で。)
ちなみに、この点が一番優れている言語は、phpだと自分は思っている。
(それが、現在に、phpがそこそこ使われている理由だと自分は思っている。)
(追記。確かに上記のように思ってはいるが、自分は、phpを使って何かを開発しようという気には全くなれない。)


と、ここまで書いて、Schemeが盆栽言語かどうかという事は、なんかどうでもよくなってきた。
なので、この文章は草稿として残すものの、一旦放棄。