日本語版まえがき
v
日本語版まえがき
いろいろなものにはその根源というものがあります。普段生活している中で、万物の根源について
考えることはあまりありませんが、私たちを取り囲むすべての物質は原子から、それらの原子もより小
さな素粒子から構成されます。
プログラミングでもそうです。普段私たちはWebアプリケーションを開発したり、テキストデータを
処理したりする時に、めったに根源的なことについて考えません。ただ、デザインし、処理の手順を
考え、それをコードに変換するのです。しかし、原子がなくては物質が存在できないように、プログラ
ミングもその背景となる根源的な存在がなければ成立しないのです。
それでは、プログラミングの根源とは何でしょうか。ひとつはプログラムが実際に実行されるハード
ウェアでしょう。たしかに、コンピュータという実体がなければプログラムは単なるビットの並びに過
ぎません。しかし、本書が扱う根源はハードウェアではありません。それは「計算」です。言い換えれ
ば、コンピュータ・サイエンスの根源、コンピュータにおける「実行」の理論的背景です。本書では具
体的なハードウェアを離れた仮想的な(そして異常にシンプルな)計算機を使って、計算とはそもそも
どういうものであるか、(計算機)言語とはどういうものであるかを解き明かしてくれます。
繰り返しになりますが、この「根源」に関する知識がなくてもほとんどの場合、プログラムは書けま
す。しかし、「計算」とはなんであるかという知識は、プログラミングの本質を理解するのに役立つ ...