在尝试读取点分隔整数列表时,我注意到了一件奇怪的事情.
Prelude> (reads "123") :: [(Integer,String)] [(123,"")] Prelude> (reads "123.") :: [(Integer,String)] [(123,".")] Prelude> (reads "123.456") :: [(Integer,String)] []
我理解为什么它会在实现方面发生(readNumber
成功然后convert
失败),我理解如何使用readDec
它来克服它.
我的问题是,这种行为是否记录在报告的某个地方?如果是这样,为什么?