Я пытаюсь написать что-то вроде этого
[(x,y)|x<- [1,2,3], y <- [’a’,’b’]] => [(1,’a’),(1,’b’),(2,’a’),(2,’b’),(3,’a’),(3,’b’)]
[for x in [1;2;3] do for y in ['a';'b'] do yield x,y]
просто еще один забавный способ
[1;2;3] |> List.map ( fun X -> ['a';'b'] |> List.map (fun A -> X,A) )
F # эквивалент.
List.zip [1;2;3] ['a';'b';'c']