Множественные аргументы для mapcar

Я уверен, что это вопрос очень новичка в lisp, так как я только изучаю language.

У меня есть функция в clisp, называемая count. Она подсчитывает, сколько раз данный атом появляется в списке. Я бы хотел иметь возможность вызывать count несколько раз с разными параметрами, но тот же список для поиска.

Например, я хотел бы подсчитать количество 'A , ' B и 'C в список, гипотетически. Я надеялся, что смогу сделать что-то вроде этого:

(mapcar 'count '(A B C) myList)

Я понял, что это не работает, потому что каждый из элементов в '(ABC) соединяется только с одним из элементов в моем списке. Каков подходящий идиоматический способ применения функции с дополнительным входным параметром к каждому элементу в списке?

Чтобы уточнить, я хотел бы иметь возможность использовать '(ABC) и '(AABCCC) в качестве входных данных и произвести (2 1 3) .

9
задан Terje Norderhaug 11 May 2011 в 20:27
поделиться