Hacking the core has got be one of the most interesting things I've done. Not being much of C programmer (im one of those Pascal weenies) its been a non stop rollercoaster ride of learning, head banging and even more learning.
Anyway, I finally was able to achieve a dream of mine and add Trie matching to Perls regex engine. Raphael applied it to 5.9.2 as patch 24044 on March 18, 2005. A moment I doubt I will ever forget.
Since then ive been plugging away at the second phase of my regex plans which is to add Aho-Corasick matching support. I released a patch for it just the other day but sofar it hasnt worked out as well as the plain Trie patch. It seems to have problems building on some folks machines, and seems to add an unnacceptable overhead to some regexes that involve normal Tries and not Aho-Corasick enhanced ones.
I have to say the slowdown is at the point totally inexplicable, as I would expect the code from the second patch to be in fact slightly more efficient. Theres weirdness afoot that i really dont understand.
Anyway, it feels good to have contributed this, especially as it should eventually result in performance improvements in things like SpamAssassin which would probably be a boon to many folks out there. And doing a little bit to fight spam makes me feel good.