Buenas! No pude hacer ni probar este ejercicio. El ghci me da un error y no logro darme cuenta que es lo que hace que no compile.
Fuera de eso la respuesta que elegí para esta pregunta (adjunto imagen) fue ((:) . (*2)) pero no era correcta.
Al tratar de armar el foldl a mano no lo pude hacer, me entrevero en como aplicar las cosas.
Por ejemplo, si quiero ver si la opción ((*2) . (:)) es la correcta. Siguiendo el teórico, el foldl quedaría armado así:
( ( ( ([ ] ((*2) . (:)) 1) ((*2) . (:)) 2) ((*2) . (:)) 3) ((*2) . (:)) 4)
Esto no debería funcionar ya que lo primero que se ejecuta es: ((*2) . (:)) 1 que es igual a [ ] ((*2)( (:) 1)) y como el (:) necesita dos parámetros esto debería dar error.
Luego la opcion (*2) la descarto como correcta ya que me falta hacer el cons con la lista.
Y por ultimo si elijo la opcion f = (\xs x -> x *2 : xs) el flodl quedaría
( ( ( ([ ] f 1) f 2) f 3) f 4) y lo primero que se debería ejecutar seria [ ] f 1 pero al hacer esto no veo como f toma [ ] si esta a la izquierda.
Si pueden aclararme un poco un éxito.
Gracias!