0
Я пытаюсь скомпилировать следующий код:получения неопределенной ссылки на функцию в commonLISP
(defun nextStates (st)
"generate all possible states"
(setf N 0)
(setf states-list (make-list 9))
(setf list-actions (possible-actions))
(loop for x in list-actions do
(setf aux (nextState st x))
(when (not(member aux (states-list) :test #'equalp))
(progn
(setf (nth N states-list) aux)
(setf N (+ N 1))
)
)
)
(values states-list)
)
nextState является функцией и состояния, список представляет собой список, оба из которых определены. Я получаю «неопределенную ссылку на список состояний». Я не знаю, что я делаю неправильно. Любая помощь будет принята с благодарностью
ли Вы забыли 'do'? – Sylwester
@Sylwester Я пытался, но он не компилировался. Как я могу поместить несколько операторов внутри? –
Он должен принимать несколько форм. Например. '(цикл: для var: in list: do expr1 expr2 ...)'. Если у вас нет предложения then, вы должны '(когда (not (member ...) expr1 expr2 ...)' – Sylwester