I think main = putStrLn(show ((reads "123.")::[(Int,String)])) should print [(123,".")] rather than [] as it does in Hugs (Feb2001). As far as I can work out, from the rather tangled Haskell code in the Prelude, Hugs is at fault, not the Prelude. Glasgow Haskell 4.08.2 agrees with me. Please cc replies to me, as I don't subscribe to this group.