On Sat, Aug 09, 2008 at 10:24:20AM -0700, Carl Mäsak wrote: > Patch attached. > > I've also fudged t/builtins/strings/subst.t in the Pugs repo, so that > it passes with this patch applied.
Thanks! A couple of items: 1. I suspect this method really belongs in src/builtins/any-str.pir instead of the C<Str> class, so that we can do replacements on the stringification of any invocant (not just C<Str> objects). 2. The :multi() is likely incorrect, even as a method of C<Str>. Any object should be usable as a pattern/replacement, not just C<Str> objects. For example, I think that these ought to be equivalent: $foo.subst('3', '4') $foo.subst(<3>, <4>) $foo.subst(3, 4) I.e., the caller shouldn't have to be concerned about coercing the parameters to C<Str> objects in order to invoke the builtin C<subst> method. Thanks again! Pm