decart2 po pre = map ((pre++) . (:[])) podecart l = foldl (\pre po -> concat $ map (decart2 po) pre) [[]] lmain = print $ decart [["palto", "noski", "shapki"], ["red", "black", "white"]]
Standard input is empty
[["palto","red"],["palto","black"],["palto","white"],["noski","red"],["noski","black"],["noski","white"],["shapki","red"],["shapki","black"],["shapki","white"]]
The brand new service which powers Ideone!
Widget for compiling and running the source code in a web browser!