[Haskell-cafe] Re: ANNOUNCE: enumerator, an alternative iteratee package

John Millikin jmillikin at gmail.com
Sat Aug 21 00:21:33 EDT 2010


On Fri, Aug 20, 2010 at 21:02, Paulo Tanimoto <ptanimoto at gmail.com> wrote:
> Hi John,
>
> What do you think of putting those parsing functions like head, last,
> length, etc, under another module or, alternatively, putting the main
> definitions under another module (say, Base or Core)?  I wouldn't mind
> if they all get re-exported.
>
> I say that because since the library aims to be minimalistic, it would
> be nice to import the core parts only.  That makes it easy to avoid
> some name clashes as well.

My goal isn't to be "minimalistic", necessarily, I just don't want to
drag in huge dependencies like haskell98. Ideally, the API would be
something like that of "bytestring" or "text" -- easy to understand,
comprehensive, and with large dependencies factored out to related
modules (like "text-icu" or "bytestring-mmap"). Having lots (and lots
and lots) of exports is OK, as long as it's easy for users to
understand how they work.

Regarding my comment for the parsing functions: I'm starting to think
that's wrong. They're not for "parsing" so much as general data
manipulation. Especially cases like dropWhile or peek, which are
useful to all sorts of data types which can't really be "parsed".

The next release will probably see an expansion and documentation of
that section, though some of the more useless ones (length, last) will
be removed unless anybody speaks up.


More information about the Haskell-Cafe mailing list