Digamos que quiero saber todos los puntos en un plano (x, y)
que están en el rectángulo has
.Problema de generalización de Haskell (que involucra listas de comprensión)
puedo calcular que el uso de Listas por comprensión, de esta manera:
let myFun2D = [(x, y) | x <- [0..2], y <- [0..2]]
Ahora, si yo quiero lograr lo mismo para un espacio (x, y, z)
, puedo seguir el mismo camino y hacer:
let myFun3D = [(x, y, z) | x <- [0..2], y <- [0..2], z <- [0..2]]
¿Hay alguna forma de generalizar esto para cualquier cantidad de dimensiones? Si es así, ¿cómo?
let myFunGeneralized = ?
Gracias
Por lo tanto, ya que hay casos de la ecuación definidos para tuplas hasta 15, no debería ser tan difícil hacer que tu función funcione. – fuz
@FUZxxl: Sí, pero todavía hay que escribir 15 implementaciones diferentes para la lista de tuplas. – kennytm
Secuencia como operador de permutación: ¡eso es tan elegante! –