Boost logo

Boost :

From: Andrei Alexandrescu (andrewalex_at_[hidden])
Date: 2002-10-23 20:47:07

"Edward Diener" <eddielee_at_[hidden]> wrote in message
> Regex++ is a library. It is a single DLL or LIB file and not just a set of
> template header files.


> That may explain what you believe to be code bloat
> somewhat. I realize that using the LIB file should result in the final
> module only including the object files needed but many of the object files
> contain a large subset of functionality within a generalized source file,
> very possibly even using the static LIB version drags in some extra
> code.

Would that hint that an alternative approach would be better?

> > > That said, I think GRETA is about as big as regex++.
> >
> > The hundreds of KB still put both libraries in the hugely expensive
> > At 500 KB, it would frankly border on unacceptability for many real
> > projects.
> Wow ! I always thought 500 KB was pretty small in these days of
> multi-megabyte modules and executables and gigabytes of memory and virtual
> memory. You must be working on some pretty small projects, Andrei !

Thanks for the implied compliment. Ok, let's take a look:

cvs.exe: 239 KB
efaxview.exe (fax viewer): 337 KB
kazaa.exe: 2,258 KB
msmsgs.exe (MS Messenger): 1,477 KB
stocks.exe (Medved QuoteTracker): 4,642 KB
wincvs.exe: 733 KB

I believe I compressed some or all of these programs with upx, but if you
double the numbers, my point stays the same.

Consider a 3 MB executable, would that be enough? If what my program does is
***all about*** regular expressions, ok, I grudgingly agree on having a
regex engine add 17% size to it.

If that program has only incidental use for regular expressions (as might be
the case with either of the above programs), such as validating some user
input or parsing some protocol or parsing some file format, then no way
we're talking about "pretty small". No way.


All new!  THE C++ Seminar: Oct. 28-30 in Vancouver, WA.

Boost list run by bdawes at, gregod at, cpdaniel at, john at