Dudas función read y clases

Dudas función read y clases

de Santiago Agustín Silveira Pérez -
Número de respuestas: 1

Hola.

Repasando en el cuestionario de tipos de datos algebraicos, me surgieron dos dudas:

1) ¿Por qué la opción d) está mal?

read

2) ¿Por qué la opción b) está mal?

classes

En respuesta a Santiago Agustín Silveira Pérez

Re: Dudas función read y clases

de Marcos Viera - InCo -
Hola,

Van las respuestas:

1) Porque de la aplicación a 'a', ya sabés que el tipo a es Char, entonces el String a leer tendría que contener la representación de un Char.
Si, por ejemplo, el código de foo fuera el siguiente funcionaría bien:
foo :: Read a => a -> (a,a)
foo x = (x,read "\'9\'")

2) El problema de la opción b es que es demasiado polimórfica. Dice que el primer componente del par resultante puede ser de cualquier tipo a, cuando en realidad no es así, dado que tiene que ser de un tipo a que sea instancia de Dummy. Notar que el valor de ese componente es el resultado de llamar a dummy.

saludos