В результате размышлений вокруг проблемы с физическим упражнением я пытаюсь написать функцию, которая берет входное число и произвольный список длин делителей для проверки вместе с ожидаемой делимостью (т. Е. остаток 0) в качестве логического значения, возвращающего значение true, если все ожидания выполняются (по умолчанию используется значение true, если не указано).Common Lisp - Предоставление и отдых Списки как аргументы
Пример ввод:
(divisible-by 10 (5 t) (4 f) 2) => t
Мое чтение привело к этой попытке в создании входа для функции:
(defun divisible-by (numerator &rest args (&key divisors (divisorp t)))
(loop...))
Моих простых тестовых случаев для такой ошибки ввода типа различных способов , и мой поиск через Google и прямо здесь, в Stack Overflow, не оказался плодотворным, и мне казалось, что мое понимание недостаточно для создания правильных ключевых слов.
Указатели на то, как реализовать такую функцию, где мои попытки падают или почему такая функция не может быть реализована, как я изложил, было бы с благодарностью принято.
Вы действительно хотите ключевые слова? Ваш пример ввода, похоже, не использует их. – npostavs
@npostavs не очень, изначально я попытался использовать & optional вместо этого, но в моем чтении было предложено использовать ключ & в сочетании с & rest вместо этого, и я не мог найти никаких примеров & rest и & необязательно использоваться в комбинации, поскольку я хочу здесь , – Sam
На самом деле, я не понимаю, зачем вам что-то сверх '& rest'. – npostavs