我正在研究关于SICP(计算机程序的结构和解释)的书,这本书要求我学习lisp,所以我为windows安装了一个名为SBCL(Steel Bank Common Lisp)的lisp编译器。问题是我从书中看到了这个代码:
(define pi 3.14159)
(define radius 10)
(* pi (* radius radius))
将它作为filename.lisp保存在notepad ++上并运行它。
发生错误,说: “函数COMMON-LISP-USER :: DEFINE未定义。” 为什么会这样?我如何使这项工作?
答案 0 :(得分:11)
SICP是一本关于名为“Scheme”的编程语言的书。它在书的前言中如此说。事实上,这是本书的网站:http://mitpress.mit.edu/sicp/
SBCL是一种名为“Common Lisp”的编程语言的实现。 define
不是Common Lisp中的预定义函数(或其他形式)。
解决方案是让您从书中学习Common Lisp,或者获得Scheme的实现。