« ソフトウエア技術書昨今事情 | トップページ | クヌースの数学の教科書 »

2014年3月12日 (水)

「文芸的プログラミング」は科学的プログラミング~その2

クヌースの有名な書籍に「Literate Programming」がある。

翻訳もされている。

20年以上も以前の書籍であるが内容は古くない。

この本は以前も紹介しているが刺激に富む一冊である。

なぜ古くないと言えば、内容が普遍的なことを扱っているからである。

表面的にはやや古い印象を与える部分もあるが、本質は現在と変化していないテーマを多く扱っている。

クヌースは第一章で「文芸的プログラミング」と「科学的プログラミング」について言及している。

著名な研究者達の「文芸的プログラミング」と「科学的プログラミングの意見も紹介している。

いずれにしても「文芸的プログラミング」は、「科学的プログラミング」を基礎とし、その上でエンジニアの感性も必要と述べている。

なぜなら、この本で紹介されている数々の科学的な論点を理解していなければ、正当性のあるプログラムを書けないことが主張されているからである。

その上で初めて個々の感性などが必要になってくる。

さて、第2章では「goto文」について議論されている。

いまどきgoto文の話かよと思うかもしれないが、議論の内容は高度である。

おそらく多くの大学や大学院では教えていない形式的に扱う正当性の議論が展開されている。

多くのプログラマーは感覚的に「goto文」は不要だとか、「goto文」も時には必要であると考えている位だと思うが、より正確に検討するためには、ここで述べららている視点からの議論が必要だ。

L1020020_convert_20140312092719

アスキーから出版された翻訳版。

L1020021_convert_20140312092853

中はこんな感じ。

L1020022_convert_20140312093011

内容は論理式、数式のような記述が目立つ。

L1020023_convert_20140312093142

クヌースの言う感性やアートとは、あくまで理論的な基盤を持つ数式(論理式)などを通じて表現されることを主張していることは間違いない。

|

« ソフトウエア技術書昨今事情 | トップページ | クヌースの数学の教科書 »

「パソコン・インターネット」カテゴリの記事