I looked through the "This Week on p5p" summary, and see that there is considerate work going on to slow down the REx engine. Why? Why move the support for polymorphic UTF8 into the REx engine at all? Just make PMOP have two regexp*, and fill them up when needed, and use the correct one. This way there is going to be no overhead for non-utf8 operation, and only 2x space overhead for have-utf8 operation... This space overhead may be addressed later if needed. Ilya P.S. Another unrelated remark: Flattening the recursion has nothing to do with (??{}). It will work with (|), *, +, ? and {n,m}. [Only (|) is implemented now.]Thread Next