On Fri, 20 Sep 2002, Larry Wall wrote: > But if a fast implementation needs to keep pointers into a string > rather than offsets from the beginning, we're asking for core dumps if > the string is modified out from under the pointers, or we have to > adjust all known pointers any time the string may be modified.
With the current Parrot GC, keeping pointers into the string while doing unrelated allocation will get you a core dump, since the string body might be copied. So unless the regex engine copies strings off into its own private non-collected storage, we're stuck with offsets anyways. /s