That seems really strange. I mean I get why their database is written in that, but I would imagine that their matching algorithms, at least, were written in something more easily adapted to change. It is one of the cases where I would want to write it in Lisp.