On Wednesday, 4 July 2012 at 04:33:14 UTC, Jonathan M Davis wrote:
Okay, given the fact that takeFront wouldn't work with ranges like std.stdio.ByLine, the code as proposed won't work. So, here's an adjusted
proposal:

https://github.com/jmdavis/phobos/commit/14b88d9d5528f8736ae6014013bba82367e83620

As suggested, I renamed takeFront and takeBack to consumeFront and consumeBack respectively, but now they're in std.array and only apply to arrays.

...

If no one has any major objections to this scheme or can provide a better
proposal, I'll create a pull request from what I have.

- Jonathan M Davis

I like the new scheme.

I'm not 100% sold on the name "consumeFront" though. For starters, it introduces a notion of "consumption", which does not exist anywhere else in the language.

Furthermore, "consume" is a bit loaded, some of its usages carries negative connotations. It is sometimes used as "over indulging" when eating. "to consume" by itself usually means to do drugs. consume can also mean "destruction by fire", and the word carries loaded meaning in cultures like the Indian Culture, where the dead are ritualistically burned (consumed) in open fire.

I know it is just a minor detail, and probably culture oriented, but naming is the kind of thing you chose in 1 days, and then have to maintain for 3 decades. If "take" wasn't even called "take" to begin with (it doesn't even _take_ anything...), we wouldn't be having this discussion. If we are looking for a new name, I think it is worth the effort to brainstorm on it.

I'll propose "spendFront", which is pretty much the same thing, but is less loaded. I'm not entirely sure if it carries the meaning as well? I think it is a worth discussion.

----

Reply via email to