¿Existe una buena razón por la que el tipo de Prelude.read sea
read :: Read a => String -> a
en lugar de devolver un Maybevalor?
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 Leftcontendría la cadena original si no se analizara y Rightel 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.
readMaybeque pronto se agregue una función.
takeser así Integral n => n -> [a] -> [a]?
takeacepta ningunoNum a => a? ¿Por qué hay un caso especial defmaplistas de for? ¿Por quéFunctorno es obligatorio para lasMonadinstancias? Espero que la respuesta sea similar a las respuestas a estas y otras preguntas relacionadas.