¿Existe una buena razón por la que el tipo de Prelude.read sea
read :: Read a => String -> a
en lugar de devolver un Maybe
valor?
read :: Read a => String -> Maybe a
Dado que la cadena podría no ser analizable Haskell, ¿no sería esto último más natural?
O incluso Either String a
, ¿dónde Left
contendría la cadena original si no se analizara y Right
el resultado si lo hiciera?
Editar:
No estoy tratando de que otros me escriban una envoltura correspondiente. Solo busco la tranquilidad de que es seguro hacerlo.
readMaybe
que pronto se agregue una función.
take
ser así Integral n => n -> [a] -> [a]
?
take
acepta ningunoNum a => a
? ¿Por qué hay un caso especial defmap
listas de for? ¿Por quéFunctor
no es obligatorio para lasMonad
instancias? Espero que la respuesta sea similar a las respuestas a estas y otras preguntas relacionadas.