Producto cartesiano perezoso de secuencias múltiples (secuencia de secuencias)
Puede sugerir una forma más simple y clara de escribir esta funció
let cartesian_product sequences =
let step acc sequence = seq {
for x in acc do
for y in sequence do
yield Seq.append x [y] }
Seq.fold step (Seq.singleton Seq.empty) sequences