On 26 April 2004 02:49, S. Alexander Jacobson wrote: > Sun and Dell both sell 64-bit boxes. But the core > question is why have two different types at all? > > This issue is timely because I just got an error > in code that looks vaguely like: > > h<-openFile "foo" AppendMode > pos <- hFileSize h > hPutStr $ show something > hClose h > content <- readFile "foo" > return $ take pos content > > This code produces an error because (madness!): > > hFileSize::Handle -> IO Integer > take::forall a. Int -> [a]->[a] > > I have to assume conversion between files and > lists is not all that rare even in beginner code. > > Note: I don't really care whether everything is > 64bit Int or Integer. I just find having to care > about this point in such trivial code ridiculous.
Probably if the take function were being designed today, there would be no question about whether it should take Int or Integer. Back then, the Integer overhead was high enough to worry about, and lots of benchmark programs used take/drop. Nowadays, we can't really change the type of take without breaking just about every Haskell program. Cheers, Simon _______________________________________________ Glasgow-haskell-users mailing list [EMAIL PROTECTED] http://www.haskell.org/mailman/listinfo/glasgow-haskell-users