Я не совсем уверен, как сформулировать название этой темы, поэтому, если вы можете это уточнить, пожалуйста, сделайте это.
Мой пример кода такой:
(doseq [x [1 2 3] y [3 2 1]] (println (str x y)))
Вывод этого кода:
13
12
11
23
22
21
33
32
31
nil
Я понимаю, что списочные постижения и дозак оба оценивают так. Есть ли другой способ сделать это, чтобы вместо 1 элемента x использовался для каждого элемента y и т. Д., 1 элемент x использовался с 1 элементом y и т. Д., Так что вместо этого вывод :
13
22
31
Извините, если я не правильно сформулировал это, я просто не могу выразить это словами.
РЕДАКТИРОВАТЬ: Я думаю, что вы можете сделать это в Haskell с помощью списочных пониманий и расширения языка. ParallelListComps или что-то.