Estoy leyendo a través de Learn You a Haskell y llegué a un punto en el que estoy tratando de mover un elemento de una lista a la cabeza. He descubierto lo que creo que es la manera ingenua y tengo curiosidad si alguien puede mostrarme lo que haría el experimentado programador Haskell en su lugar.¿Cómo mover un elemento en una lista en Haskell?
En este ejemplo, tengo una lista de enteros y quiero mover el elemento '4', que sería el índice '3', al encabezado de la lista.
let nums = [1, 2, 3, 4, 5]
(nums !! 3) : delete (nums !! 3) nums
devuelve [4, 1, 2, 3, 5].
¿Qué opinas?
"Borrar" elimina la primera aparición del elemento dado, por lo que podría eliminar el elemento equivocado si hay duplicados ... – sth