Я уверен, что это вопрос для начинающих, потому что я только изучаю язык.
У меня есть функция в clisp, которая называется count. Он подсчитывает, сколько раз данный атом появляется в списке. То, что я хотел бы сделать, это иметь возможность подсчитывать количество вызовов с разными параметрами, но один и тот же список для поиска.
Например, я бы хотел подсчитать число 'A
, 'B
и 'C
в списке, гипотетически. Я надеялся, что смогу сделать что-то вроде этого:
(mapcar 'count '(A B C) myList)
Я понял, что это не работает, потому что каждый из элементов в '(A B C)
связан с одним из элементов в myList. Каков подходящий идиоматический способ применения функции с дополнительным входным параметром к каждому элементу в списке?
Чтобы уточнить, я хотел бы иметь возможность принимать '(A B C)
и '(A A B C C C)
в качестве входных данных и производить (2 1 3)
.