Jean Boussier <[email protected]> wrote:
> > upcase seems VERY compelling in a micro benchmark since it can
> > go straight into opt_case_dispatch. But I worry the extra
> > garbage might have a different effect in a real app, especially
> > with more headers.
>
> It is indeed debatable. The thing is that on match, that Regexp
> will generate a MatchData and a garbage string. So I'd think
> the extra GC pressure would be totally negligible.
Ah good point. I take it Ruby doesn't lazy-allocate or have
optimizations to quickly recycle unused MatchData? (Maybe it
could, if somebody who hacks on the VM is reading this).
> But I agree it's hard to tell without a larger more representative benchmark.
Yes, I would accept patches to speed these up with comprehensive
benchmark :)
> > Maybe:
> >
> > (val || ''.freeze).include?("\n".freeze)
> >
> > Can work for those buggy apps, though...
>
> Yes. or:
>
> vall && val.include?...
Yes.
--
unsubscribe: one-click, see List-Unsubscribe header
archive: https://yhbt.net/unicorn-public/