Adding System.FilePath

Bulat Ziganshin bulat.ziganshin at
Fri Mar 16 05:54:01 EDT 2007

Hello Duncan,

Friday, March 16, 2007, 12:07:24 PM, you 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

> 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

> As I've mentioned before, a reason to keep it in base in future is that
> it gives us the opportunity to rewrite programs that don't even import
> ByteString into more efficient versions, for example:

> f . lines =<< readFile "foo"

> to

> f . map unpack . B.lines =<< B.readFile "foo"

> (and there may be further fusion opportunities if f is a fusible list
> consumer)

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? :)

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


Best regards,
 Bulat                            mailto:Bulat.Ziganshin at

More information about the Libraries mailing list