But then you get all the complexity of a required dependency while keeping the costs associated with maintaining the old engine, and you also have to maintain the new code (which doesn't just interact with <tt>regexp</tt> and <tt>regsub</tt>, but also <tt>switch</tt> and possibly other places too).