-1
Я написал эту функцию, но мне сказали, что я не могу использовать ее внутри, я не знаю, как ее изменить, чтобы удалить цикл. любое предложение?LISP как написать эту функцию без использования LOOP
(defun function (P VariableValues)
(let* ((M (mono P))
(VariableNames (variables P))
(VariableDict (loop for x in VariableNames for y in VariableValues collect (cons x y)))
(Valorizzati (mapcar (lambda (x) (applica-valori VariableDict x)) M))
)
(if Valorizzati
(+ (car Valorizzati) (recursive-sum (cdr Valorizzati)))
0)))
спасибо за ответ, но я не могу заставить его работать ... какие-либо идеи? – user7337963
@ user7337963 Мой код работал, когда я написал ответ. Он должен работать во всех общих реализациях lisp. Разве это не работает для вас? – Sylwester
, если я просто проверю код, который вы ему предоставили, он отлично работает, когда я реализую его в своей функции, он компилируется без ошибок, но он дает мне ошибку при тестировании функции – user7337963