Johannes Schindelin 944f5f3567 Start implementing a regular expression engine
So far, these are humble beginnings indeed. Based on the descriptions of

	http://swtch.com/%7Ersc/regexp/regexp2.html

I started implementing a Thompson NFA / Pike VM.

The idea being that eventually, regular expressions are to be compiled
into special-purpose bytecode for the Pike VM that executes a varying
number of threads in lock-step over each character of the text to match.

The thread count is bounded by the length of the program: two different
threads with identical instruction pointer at the same character-to-match
would yield exactly the same outcome (and therefore, we can execute just
one such thread instead of possibly many).

To allow for matching groups, each thread carries a state with it, saving
the group offsets acquired so far.

Signed-off-by: Johannes Schindelin <johannes.schindelin@gmx.de>
2013-12-03 12:28:10 -06:00
..
2013-11-04 15:11:00 -06:00
2012-08-11 08:01:44 -06:00
2013-11-04 12:08:22 -06:00
2012-12-20 09:05:30 -07:00
2012-12-20 09:05:30 -07:00
2011-11-03 12:30:51 -06:00
2013-11-06 09:46:56 -06:00
2008-11-02 15:25:51 -07:00
2011-01-20 09:39:16 -07:00