Отображение лени в Clojure

Я создаю простой графический интерфейс Swing в Clojure. я пытаюсь применить одну функцию к нескольким компонентам графического интерфейса, используя карту в контексте let:

(map # (f% component4) [component1 component2 component3])

Где все компоненты определены в let .

Проблема в том, что map ленив, и действие не применяется к компонентам, однако я могу принудительно выполнить его, заключив вышеупомянутое в «дубль».

Есть ли альтернатива map? Или мне следует поступить иначе?

РЕДАКТИРОВАТЬ: Использование против часовой стрелки в затмении. У меня были разные результаты, используя (используйте Lib: reload) из REPL и используя CTRL + Enter из редактора. При перезагрузке графический интерфейс будет запущен, но возникнет описанная выше проблема. Проблема не возникла при использовании CTRL + Enter из редактора, поэтому я думаю, что мое описание проблемы может быть неточным. Тем не менее, в этом сценарии DoSQ представляется лучшей альтернативой картированию.

6
задан user1064799 25 November 2011 в 03:19
поделиться