Назначение - определить функцию, которая принимает один список в качестве параметра и выводит максимальное значение списка.Я чувствую, что мои вложенные «если» и «позволяет» являются чрезмерными, и функция преждевременно завершается без вывода ответа.Я искал пример правильного использования let с рекурсией, но оказался пустым, функции отладки в DrRacket не очень полезны для трассировки через рекурсивный вызов.
Любая помощь приветствуется, спасибо.
(define max
(lambda (x)
(let ((y (car x)))
(if (null? (cdr x))
y
(let ((m (max(cdr x))))
(if (> m y)
m
y)
)))))