作者: 機械伯爵
日時: 2003/2/3(00:05)
 機械です。

>言語の簡潔さと、その言語で書かれるプログラムの簡潔さは多くの
>場合対立します。ここではプログラムの簡潔さについて語っている
>のだと思いますから「シンプルな文法」はむしろ敵です。
>
>もっとも、複雑過ぎる言語は自己崩壊する危険性をはらんでいます
>から、バランスが必要なのはあいかわらずなのですが。

 制約の無い言語であれば、その黄金比を追求すれば、
非常にバランスの良い言語が出来ると思うのですが、た
とえばPythonのように、そもそもの目的に「教育用」な
どという厄介なモノが入っていた場合、文法に関する制
限が非常に厳しくならざるをえないということになりま
す。

※学生にプログラムを教えるのに、Lispをあきらめて
  Pythonにきりかえたというのはそこらへんでしょう。

 一方、プロのツールであれば、最低限「自分の過去の
コードは読んで理解できる」というあたりにとどまるで
しょうし、純粋に計算機用であったり、ブラックボック
スにした内部を殆ど見る必要が無い場合などは、もっと
特化できるでしょう。

※いくらソースコードを見る必要があるといっても、数
  万行のコードを一行づつ検証しなければならないよう
  な羽目にはならないはず・・・いや、プロじゃないか
  ら断言できませんが、そうなる前にモジュール化ぐら
  いはしてるはずだと思うので・・・

 「何にでも使える」という言語が無いのは当たり前と
しても、カヴァー範囲が広がれば広がるほどそれぞれの
用途での有用性は下がってくるはずです。

 かといってあまりに専門化された言語は、覚える労力
に対して使える状況が少なく敬遠されそうなので、複数
の言語を使うことを前提に、やはり切り捨てるべきは切
り捨てて「使える」モノにしていかなければならないわ
けです。

 しかし、本来のニッチを超えて広まってしまったC言語
(前後してBASIC,C++,Java)は、話をややこしくしてい
ます。

 Mr.Grahamの言葉を借りるなら「どんな言語でも同じ・
・・ではない」のに、あたかもどの言語でも同じだと考
え、現在ポピュラーな言語に傾倒して、それを使ってし
まう。

※大体、なんであんなにC言語の本が多いのだろう?

 もっとも私は「有利不利」でなく「それぞれの言語に
合った使い道がある」という形で選択できていないとこ
ろに、プログラミングがコンピュータユーザからいつの
まにか遠い存在になってしまった一因があるように思え
ます。

 いやそれ以前に、プログラムの書けない人でもコンピ
ュータが使えるようになった、という理由のほうが大き
いのは事実でしょうが、もうちょっと何かうまくやれば、
もっとプログラミングできる人、ふえるんじゃないかと
私は期待しています。

                     機械伯爵