Beefy Boxes and Bandwidth Generously Provided by pair Networks
There's more than one way to do things

Re^3: Recursive Regex: Update

by demerphq (Chancellor)
on Sep 13, 2006 at 10:11 UTC ( #572710=note: print w/replies, xml ) Need Help??

in reply to Re: Re: Recursive Regex: Update
in thread Recursive Regex: Update

My things have come a long way since this thread. :-)

Id say hacking this into the regex engine is probably a good thing. And i suspect that its probably easier to do so than to hack PCRE into perl. Even perls own regex engine is not easily properly pluggable due to a lack of hooks into sv.c's re_dup(). I suspect that getting the PCRE engine would have the same problems. Which actually reminds me, we need to make sure that Perl 5.10 has the appropriate hooks so that making pluggable regex engines for perl 5.10 and later is easier.


Replies are listed 'Best First'.
Re^4: Recursive Regex: Update
by robin (Chaplain) on Sep 16, 2006 at 15:30 UTC
    You're right that things have come a long way. I'm not scared of the tokeniser any more, for example. The regex code still gives me the willies, but I guess you're happier with it than you were in 2002. :-) The most unsatisfactory thing about the PCRE recursion code is that the match data is still a plain list, when morally it ought to be a tree. If we could get that sorted, you could write an entire parser as a single regex!

      The recursive regex patch was applied to blead as 28939. If you feel up to it it would be cool if you could review the documentation on it and make whatever changes you think are needed based on your experience with the PCRE stuff.


Log In?

What's my password?
Create A New User
Domain Nodelet?
Node Status?
node history
Node Type: note [id://572710]
and the web crawler heard nothing...

How do I use this?Last hourOther CB clients
Other Users?
Others examining the Monastery: (7)
As of 2023-12-07 22:58 GMT
Find Nodes?
    Voting Booth?
    What's your preferred 'use VERSION' for new CPAN modules in 2023?

    Results (33 votes). Check out past polls.