EVAL: неопределенная функция DEFINE
Я написал очень простую программу:
(define size 2)
(print size)
Когда я запускаю этот код, я получаю следующую ошибку:
*** - EVAL: undefined function DEFINE
Что означает ошибка? Как я могу решить это?
2 ответа
define
не является частью языка ANSI Common Lisp, который реализован GNU CLISP (я думаю, вы путаете CL со Scheme).
При определении переменной используйте defvar
, для использования функции defun
,
Возможно, вы захотите получить книгу, например, ANSI Common Lisp.
определение в языке программирования Scheme означает определение переменной или функции,defvar или defparameter в языке программирования Common Lisp (что реализует CLISP и отличается от Scheme), означает определение переменной.defun в Common Lisp означает определение функции.
CL-USER 195 > (defparameter size 2)
SIZE
CL-USER 196 > (print size)
2
2