
On Fri, 2007-03-16 at 12:54 +0300, Bulat Ziganshin wrote:
So some of these are just bug fixes and not api changes so will be in 6.6.1.
and some will be deferred until 6.8 when we will have one more incompatibility-break? thank you
The changes are really pretty minor and only in the very low level part of the api.
But in general: so you could say that these bugs show we should have waited longer for the library to mature, on the other hand I rather suspect that we'd never have found these without the huge number of people using the lib that came from it being included as standard.
there are no differences in this aspect between base and any other bundled library
Bulat, I'm not arguing against making base a bit more modular, but you know how hard a task that is. Just yesterday we were struggling with issues of circular dependencies in the modules in base as we're experimenting with a new list library implementation. Heh, just to add to the confusion we've got our experimental list lib available as a separate package for people to play with, though obviously for it to be really practical in the long run it has to replace the list implementation, which (oh noes!) means sticking it in base. (Since otherwise you can't desugar things like list comprehensions into the new implementation.)
oh my god! you plan to further evolve base library and its legacy i/o part. but how about using unicode filenames or newer async i/o api? it should be also implemented inside base? one library for anything? :)
It's quite independent. It could work with any standard IO system. I mention the H98 readFile etc because that's what we have right now. Note that one could take advantage of async IO without changing the Handle API.
i think that it will be much better if fps will be detached from base and you will provide i/o library on top of fps and lowIO [1] that makes all these cool things. this way you will got support of all the features lowIO provides for free
As I said, it's quite independent. You could use ByteStrings with any sane IO library since all it needs is to be able to read/write data buffers. Duncan