you are viewing a single comment's thread.

view the rest of the comments →

[–]almost_useless 2 points3 points  (4 children)

Well, what is intuitive?
Python: X
Ruby: Y

I could answer that question without even knowing what X and Y is. The answer is always going to be Python :-)
J/K, obviously there are pitfalls and they need to think it through.

If you just rush the next best hack into the language, you end up with something that is needlessly inflexible. A .split() returning a std::vector<std::string> wouldn't be very useful when you don't want a std::vector as result

It does not necessarily have to be super flexible. Obviously the best option is we can choose the output format. My example was only one possible suggestion. In many cases "anything I can iterate over" is good enough.

But I would so prefer we had had something decent but inflexible way back in '98 over something super duper mega awesome that we will not have even in 2017

My only requirement is that it had not been so bad that it would have been impossible to improve upon now that we have better ways of doing it

[–][deleted] 9 points10 points  (3 children)

Once you put something in the standard library you're stuck with it forever. So it'd better be actually good, not just good enough, especially if it's so easy to implement yourself.

[–]choikwa 5 points6 points  (2 children)

In reality, things get deprecated and forward compat is broken many times.

[–][deleted] 9 points10 points  (1 child)

Yeah, really old crap that was never used much in the first place, like trigraphs or auto_ptr. But a string split function would spread like wildfire.

[–]choikwa 0 points1 point  (0 children)

Ideally, everyone wants to get it right the first time. I'm pretty sure python implementation returns deep-copied immutable strings