Buenas noches, ¿Cómo están?
Tengo una consulta sobre el ejercicio 7 del parcial de 2017, añado una imagen del ejército a continuación:
Mis dudas son las siguientes:
1) Si una tengo monad_1 >> monad 2, siempre se debe cumplir que monad 1 y monad 2 sean del mismo tipo, no? En este caso entiendo que print x es una monad de tipo IO (), por lo tanto, si monaux no tiene el mismo tipo, no hay forma que funcione, independientemente del tipo del parámetro x de monaux.
2) Porque la opción c está mal?, al no saber nada de m, ¿cómo podemos afirmar que 'm' es de tipo IO? ¿Capaz es una pregunta básica de tipos, pero esto capaz funciona porque como IO es una Monad, entonces la función es compatible para cualquier Monad?
Saludos y gracias,
Daniel