in reply to Re: What should be returned in scalar context?
in thread What should be returned in scalar context?

I hate having to write $x = uc $x; when the dwimmiest way would be uc $x; and have it mutate in void context.

The funny (?) thing is that Perl itself is inconsistent when it comes to operators that change strings.
MutatingNot mutating
chomp
chop
s///
tr///
lc
lcfirst
quotemeta
uc
ucfirst

Juerd # { site => 'juerd.nl', plp_site => 'plp.juerd.nl', do_not_use => 'spamtrap' }

  • Comment on Re: Re: What should be returned in scalar context?

Replies are listed 'Best First'.
Re: Re: Re: What should be returned in scalar context?
by chromatic (Archbishop) on Dec 03, 2003 at 01:46 UTC

    As of last week, Larry's plan is to make Perl 6 much more consistent in that respect. My speculation (not his official pronouncement) is that there'll be two versions of each operator, one that works in-place and one that returns the modified value, leaving the original untouched.

    It'll probably go further than Ruby's convention of postfixing ! to methods that operate in-place, perhaps having language support for adding this behavior to your own operators.

    It's only in the idea stages, though.