致谢
我们要感谢许多帮助过我们编写本书及其所支撑课程的人。我们得到了与我们一同学习经典力学的优秀学生的大力帮助。他们迫使我们保持清晰;他们发现了我们必须修复的错误——无论是软件中的、表述中的,还是我们思维中的。
哈罗德·阿贝尔森在课程内容的开发和呈现方面提供了大量的技术帮助。阿贝尔森是 Scmutils 软件系统的开发者之一。他在部分代码上付出了巨大努力。当我们拼命试图理解力学的逻辑时,我们也向他请教。他常常能提出一个方向,带领我们走出智力的迷宫。
马修·哈尔方特开启了 Scmutils 系统的开发。他鼓励我们进入科学计算领域,使用 Scheme 和函数式风格作为一种积极的方式来解释思想,而没有像 C 这样的命令式语言的干扰。在 1980 年代,他编写了一些我们至今仍在使用的最早的 Scheme 数值计算程序。
丹·祖拉斯帮助我们发明了 Scmutils 系统的独特组织方式。系统围绕链式法则的一个泛型扩展来组织,用于求导,这得益于他的洞见。他还帮助完成了实现一个真正优秀的多项式 GCD 算法所需的重任,该算法基于我们从理查德·齐佩尔那里学到的思想。
本书以及我们实验室的许多其他工作,都离不开克里斯·汉森的杰出贡献。克里斯开发和维护了支撑本工作的 Scheme 系统。此外,他带领我们完成了一次 Scmutils 系统的重组过程,这迫使我们澄清了许多关于类型和泛型操作的思想,正是这些思想使我们的系统达到了现在的水平。
吉列尔莫·胡安·罗萨斯,Scheme 系统的共同开发者,对 Scheme 编译器做出了重大贡献,并实现了许多其他神秘机制,使我们的系统足够高效以支撑我们的工作。
除了为 Scmutils 系统中的线性方程求解方法做出贡献外,雅各布·卡岑尔森还提供了宝贵的反馈,改进了材料的呈现方式。
朱莉·萨斯曼,PPA,提供了仔细的阅读和严肃的批评,迫使我们重组和重写了文本的大部分内容。她还在这许多年间发展和维护了杰拉尔德·杰伊·萨斯曼本人。
塞西尔·威斯登,一位圣人,通过她的信仰和榜样,不断提醒着我们什么才是真正重要的。没有她给予杰克·威斯登的爱和支持与不懈鼓励,这个项目将不可能完成。他们的孩子——威廉、爱德华、托马斯、约翰和伊丽莎白·威斯登——每天都用他们的生命丰富着他的生活。
迈因哈德(哈迪)·迈耶想感谢丽塔·迈耶耐心的精神支持,特别是在他过去 12 年间频繁访问麻省理工学院期间;感谢尼尔斯·迈耶将他引入 Scheme 的精彩世界(从而播下了这次合作的种子);以及感谢埃尔玛和其他家人的爱。
多年来,许多人为我们对动力学的理解做出了贡献。鲍里斯·奇里科夫、米歇尔·埃农、彼得·戈德赖希和斯坦·皮尔对我们有着特别的影响。我们也感谢已故的雷斯·约斯特的影响。
还有许多人通过软件开发或内容开发对本工作做出了贡献,包括比尔·西伯特、帕纳约蒂斯·斯科尔多斯、克莱安西斯·科尼亚里斯、凯文·林、詹姆斯·麦克布莱德、丽贝卡·弗兰克尔、托马斯·F·奈特、帕万·库马尔、伊丽莎白·布拉德利、爱丽丝·塞克尔、吉哈德·图马和肯尼斯·伊普。我们还从与皮特·赫特、乔恩·多伊尔、大卫·芬克尔斯坦、彼得·费希尔、盖伊·刘易斯·斯蒂尔二世和罗伯特·赫尔曼的交流中获得了极其有用的反馈和讨论。
我们感谢麻省理工学院人工智能实验室的热情好客和后勤支持。我们感谢松下公司通过捐赠教席对杰拉尔德·杰伊·萨斯曼的支持。我们感谢布林·M·克尔通过捐赠教席对杰克·威斯登的支持。我们感谢麻省理工学院数学系和 EECS 系为迈因哈德·迈耶提供学术休假支持。
我们还要感谢我们的文字编辑卡特里娜·埃弗里在本书准备过程中的帮助。最后,我们感谢丽贝卡·比斯比在这许多年来参与该项目过程中给予的帮助。