Let's stop parser Hell

Philippe Sigaud philippe.sigaud at gmail.com
Mon Aug 6 12:43:06 PDT 2012


On Mon, Aug 6, 2012 at 9:31 PM, Dmitry Olshansky <dmitry.olsh at gmail.com> wrote:

> Of course regex is first compiled to bytecode (same thing as "compile" in
> perl). Moreover if you use regex pattern directly it is compiled on first
> use and put into TLS cache of compiled patterns. From now on it's used in
> compiled form. (there about 8 entries in cache, don't relay on it too much).

Btw, I wanted to ask you that for a long time: what do you mean by
'compiled to bytecode', for D source?

> And there is a second version - compiled native code. Unlike perl it's not
> bytecode and thus usually much faster.

Which?


> Frankly the most slow regex I've seen is in Python, the second most sucky
> one is PCRE (but is incredibly popular somehow). Perl is not bad but usually
> slower then top dogs from C++ & std.regex.

Do people *really* need speed, or a great number of extensions?

> Sure as hell. In fact, the most problematic thing is that parser often fails
> during CTFE.

For example?

> Also I have a solid plan on enhancing a bunch of things effectively making
> std.regex v2 but no sooner then October-November.

That's good to know.


More information about the Digitalmars-d mailing list