在纽约举行的一次 Lisp 集会上,Gerry Sussman 被问到 MIT 为何停掉著名的 6.001 课程。这门课所用的教材是 Sussman 与 Abelson 所写的《Structure and Interpretation of Computer Programs》(中译《计算机程序...
物理学家 John Archibald Wheeler 曾言:『要想了解一个新的领域,就写一本关于那个领域的书』。
前言中,我说要写一个文式编程工具。它的名字叫 zero,是个命令行程序,运行时需要由使用者提供一些参数与文式编程元文档路径。zero 读取元文档,然后根据使用者设定的参数对元文档进行处理,最终给出相应的输出...
这个世界上,有很多人讨厌 Lisp 语言。Guile 是 Sheme 的一种方言,而后者是 Lisp 的一种方言,因此 Guile 自然也会被这些人讨厌。在他们给出的自己之所以讨厌 Lisp 的众多理由中,第一个理由是他们所阅读的一些 ...
所谓数据类型,是数据集合以及定义在这个数据集合上的一组运算。从大部分计算机的 CPU 的角度来看,存储器中的数据,只是以字节为单位的二值信号,并且 CPU 拥有一组可以操控它们的指令。因此,字节是一种数据类...
对于 Scheme 语言的初学者而言,Scheme 的宏似乎永远是他们津津乐道的重要特性之一。譬如,我在上一章的结尾处说过,『也许不会再有比 Scheme 更高层次的编程语言了。虽然人类的大脑依然在源源不断的构造着抽象之...
在本书前言中,我宣称本书的主题是用 Guile 实现一个文式编程工具。接下来,第一章中讲述了如何编写这个文式编程工具的命令行界面,第二章表面上是讲述 Guile 的 I/O 机制,实际上在最后讲述了如何利用 Guile 的 ...
学 C 语言,拦路虎是指针。学 Haskell,拦路虎是单子(Monad)。学 Scheme,拦路虎是什么呢?初学者觉得是层峦叠嶂的括号,实际上是续延(Continuation)。