З: який ідіоматичний спосіб відображення функції у списку властивостей?
Різні функції відображення ( mapcar
та сімейства) відображають функцію в такій послідовності, як список. Як користуються цими функціями при роботі зі списком властивостей , тобто при спробі відображення всіх властивостей, що містяться у списку (який би був кожен інший елемент, починаючи з першого)? Мені здається, що функція відображення потребує доступу до списку парами елементів, а не як окремі елементи.
Як іграшковий приклад, як можна взяти список властивостей та зібрати всі цінності майна? Якщо б це був список асоціацій, це було б досить просто:
(mapcar #'cadr '((:prop1 a) (:prop2 b) (:prop3 c))) ;=> (a b c)
Я впевнений, що це можна зробити за допомогою циклу, але це здається трохи трудомістким, і мені цікаво, чи існує більш ідіоматичний спосіб зробити це.
mapcar
алліст-прикладі) чи ви хочете зіставити пари символів властивості та значення властивості. Останнє є більш загальним (більше загалом корисним), я б здогадався.