Я создаю простой Swing GUI в Clojure. Я пытаюсь применить одну функцию к нескольким компонентам GUI, используя карту в контексте let:
(map #(f % component4) [component1 component2 component3])
Где все компоненты определены в let.
Проблема заключается в том, что карта ленивая, и действие не применяется к компонентам, однако я могу принудительно принудительно применить это, заключив вышеизложенное в 'take'.
Есть ли ленивая альтернатива карте? Или я должен идти об этом по-другому?
EDIT:
Использование против часовой стрелки в затмении. У меня были разные результаты с использованием (используйте 'Lib: reload) из REPL и использованием CTRL + Enter из редактора. Перезагрузка запустит графический интерфейс, но возникнет проблема, описанная выше. Проблема не возникала при использовании CTRL + Enter из редактора, поэтому я думаю, что мое описание проблемы может быть неточным. В любом случае, дозаq, кажется, является лучшей альтернативой карте в этом сценарии.