著作一覧 |
プログラミング言語Cを利用してプログラミングを学習するということはどういうことだろうか?
一見すると「英語を利用して小説の書き方を学習します」という言い方に通じるものがありそうに思う。英語で小説の書き方を学習して、では日本語で小説を書けるだろうか? 想像してみると、主人公の造形、舞台設定、盛り上げ方、などの小説の内容に関することについては英語か日本語かは関係なさそうだ。しかし、小説らしい文章表現、言い回し、などについてはそれほど応用は利かなそうに思える。
しかし、CとJava、あるいはRubyをあてはめてみると、日本語と英語ほどの相違はなさそうに思える(応用を利かせられるかどうかという点で。もちろん表現そのものは相当異なる)。一方、CとJavaに対して、HaskellとOCamlであれば、ずいぶん異なるだろう。
とすると、異なる自然言語はパラダイムが異なると考えることができるかも知れない。では、フランス人が「英語を利用して小説の書き方を学習します」の後に、フランス語で小説を書くことを想像してみる。似たような言語ではあるが、やはり「小説らしい文章表現……」にはそれなりの差がありそうだ。
違うなぁ、そういうことを考えたのではない。何を考えついたのか忘れた。
もしかしたら、設計の記述と実装の記述はやはり分離可能なのではないか、あるいは分離すべきではないか、と考えたのかな?
ジェズイットを見習え |