Structure and Interpretation of Computer Programs

投稿者: | 2010年12月26日

SICPのテキストの表紙

来年度の4年生のセミナー募集の案内記事を作成して、担当者に送った。今回、はじめて数学ではないテキストを読む。以前からの問題意識として、プログラムが組めないで卒業する学生が、数学に限らず、どの学部学科でも多いということだ。ただ、私は、数学に没頭していれば、プログラミングに限らず、一般人が難しいと思っていることでも、くいついて理解する訓練ができているので、この程度なら、十分に対応できるのではないかと信じている。

ITで活躍している人でこのテキストを読んだ人は、異口同音に、もっと若いうちに読んでおけばよかったという。このテキストを読むと読まないとでは、その後の人生が大きく変わると言っても過言ではない。

[学内で新4年生に掲示する文面]
教員:鈴木 譲 (http://joe.bayesnet.org)
専門分野:情報数理
参考:3年次までに履修が必要な科目、プログラミングのスキルは要求しない。
テキスト:Hal Abelson’s, Jerry Sussman’s and Julie Sussman, “Structure and Interpretation of Computer Programs”, MIT Press, 1984
http://mitpress.mit.edu/sicp/ (購入しなくてもオンラインで読める)
概要: 関数型プログラミングの名著。このテキストを最後まで読めば、プログラミングのスキルが身につくというだけではなく、データ構造や計算機の動作について本質を理解できる。情報科学の大学院生やITで活躍している人でも、最後まで独力で読める人は少ない。ただ、数学的思考が訓練されていれば、適切な指導のもとで、予備知識0でも十分に最後まで読めるものと思われる。Cが難しく感じても、Lispはシンプルなので、心配は不要である。非常に有名なテキストなのでネットで「SICP」と検索すれば、かなりの情報が得られる。大学院進学の場合、情報そのものというよりは、情報数理的なテーマを用意している。