Autoevaluación Ej. 14

Autoevaluación Ej. 14

de Raul Ernesto Rivarola Cuadrado -
Número de respuestas: 1

Hola, 


En este ejercicio 

qux :: [(Int,a,Bool)] -> Int
qux [((9,_,_):[])] = 42

No entendí porqué esta opción no es válida: ((9,9,True):_)

Probé compilar y efectivamente me devuelve este error: "No instance for (Eq a) arising from the literal ‘9’"

Interpreto que haskell no puede deducir que a pertenece a la clase Eq. 

Sin embargo le agrego a la definción (Eq a) y sigue sin funcionar.

qux :: (Eq a) => [(Int,a,Bool)] -> Int


Desde ya gracias.


En respuesta a Raul Ernesto Rivarola Cuadrado

Re: Autoevaluación Ej. 14

de Luis Sierra -

Al decir que 9 es de tipo a, estás precisando que a sea de la clase Eq. Pero además, 9 es un Num. Debes agregar también esa condición al tipar qux.

luis