http://www.perlmonks.org?node_id=196971

I read that chop is going away in Perl 6, because chomp is almost always what is wanted.

almost? I just came accross a counterexample in an old script. It splits a line and then removes the last character from one of the resulting values.

Well, chop is so simple and presumably fast, that it seems awkward to do without it. I suppose that substr is the general case, but I would have to look up the arguments in the docs, to tell it to locate from index -1 through the end, and replace with nothing. Replacing a trivial, easy-to-understand, and very efficient function with one that's rarely used (so I have to look it up) just doesn't sit well with me.

Obviously, I'd define my own sub chop that does this, just to keep the point of usage self-documenting.

But, if people are going to do this, what's the point of removing it from the language? Maybe the string "class" can have members for friendly-named common things to do, even if they could all be expressed with regex's or substr's. Perhaps $s.chop() because we already know what it means, and more generally $s.chop($length) will efficiently delete the last n items (bytes, chars, glyphs, depending on the same criteria that affects a regex at that point) from the string.

—John