From: Brock Peabody (brock.peabody_at_[hidden])
Date: 2003-11-18 13:10:19


> -----Original Message-----
> From: boost-bounces_at_[hidden] [mailto:boost-bounces_at_[hidden]]
> On Behalf Of Eric Niebler
> Sent: Tuesday, November 18, 2003 10:50 AM
> To: Boost mailing list
> Subject: [boost] Re: Announcing: xpressive

> As a wise man once said, don't yuck my yum. :-)

I didn't mean to yuck it, it does sound really yummy! It's just confusing
from a user's point of view to have two different ways to do the same thing.

> REs are used in dynamic
> contexts: text editors, log file parsers, URL rewriters, etc., and there
> needs to be some facility in C++ for supporting that syntax. But most
> REs are statically hard-coded. Since all the RE machinery is there to
> support dynamic REs, it should be possible to reuse it statically to
> give the hard-coded REs more power and better performance.
>
> As I mentioned earlier in the thread, in xpressive parsers are merely
> regex factories. It would be possible to write a parser to convert
> strings of EBNF into a regex at runtime and execute it. Then you have
> the runtime equivalent of Spirit. Heck, you could write a parser to turn
> your grocery list into a regex if you really want to. :-)

OK, I understand that we need to be able to do run-time REs because there
are a lot of legacy applications that use them. In what situations would
you recommend using static REs over static EBNF via Spirit?

Brock