From: Reid Sweatman (reids_at_[hidden])
Date: 1999-09-15 12:29:31
> g) Change expression compilation to
> support dfa style searching for those
> expressions that are capable of it, this
> will enable the library to give worst-case
> performance guarantees in these cases, and
> hopefully address the reservations
> expressed on the mailing list.
That's one I'd go for, since the algorithms for conversion are well-defined.
However, you might consider adding some heuristics to determine whether the
available memory and the size of the search and search key make converting
to a DFA time/cost effective. I know I've seen some results on where the
break-even points in that problem are, but can't recall just now. Probably
the Dragon book or Holub's book. Or it might have been in some obscure Dr.
Dobb's reference some time back. But I do seem to have the impression that
it's a pretty-well solved problem.
> c) Depreciate some of the library's
> internals, which already have boost or
> standard library equivalents widely
> available. Possibly surface and document
> other parts of the library's internals -
> for example the Knuth Morris Pratt code.
Again, I'm for that one, assuming that you mean by it that you want to
replace existing code with the Boost equivalent. As for surfacing specific
internals, great. I'd think that would tie in with your comments further
down on generic design idioms.
As for the rest, I think I'm in agreement with the other comments I've seen
posted. This sounds like a very useful module. On a side-note, I'm
perpetually suggesting to the authors of my favorite shareware programs that
they need regex options for advanced users. In the past, I've pointed them
at your code. This would be even better, since it would fit into a body of
fairly-easy-to-use, well thought-out utility code, i.e., the rest of the
I'm looking forward to seeing what your package ends up looking like. Also
looking forward to having some free time soon, some of which I can spend on
a goodie I've been wanting to clean up for submission. Just as soon as I'm
off these 80-hour weeks (and out of therapy, probably <g>).
Boost list run by bdawes at acm.org, gregod at cs.rpi.edu, cpdaniel at pacbell.net, john at johnmaddock.co.uk