The Lounge is rated Safe For Work. If you're about to post something inappropriate for a shared office environment, then don't post it. No ads, no abuse, and no programming questions. Trolling, (political, climate, religious or whatever) will result in your account being removed.
1. The lounge is for the CodeProject community to discuss things of interest to the community, and as a place for the whole community to participate. It is, first and foremost, a respectful meeting and discussion area for those wishing to discuss the life of a Software developer.
The #1 rule is: Be respectful of others, of the site, and of the community as a whole.
2. Technical discussions are welcome, but if you need specific programming question answered please use Quick Answers[^], or to discussion your programming problem in depth use the programming forums[^]. We encourage technical discussion, but this is a general discussion forum, not a programming Q&A forum. Posts will be moved or deleted if they fit better elsewhere.
4. No politics (including enviro-politics[^]), no sex, no religion. This is a community for software development. There are plenty of other sites that are far more appropriate for these discussions.
5. Nothing Not Safe For Work, nothing you would not want your wife/husband, your girlfriend/boyfriend, your mother or your kid sister seeing on your screen.
6. Any personal attacks, any spam, any advertising, any trolling, or any abuse of the rules will result in your account being removed.
7. Not everyone's first language is English. Be understanding.
Please respect the community and respect each other. We are of many cultures so remember that. Don't assume others understand you are joking, don't belittle anyone for taking offense or being thin skinned.
We are a community for software developers. Leave the egos at the door.
".45 ACP - because shooting twice is just silly" - JSOP, 2010 ----- You can never have too much ammo - unless you're swimming, or on fire. - JSOP, 2010 ----- When you pry the gun from my cold dead hands, be careful - the barrel will be very hot. - JSOP, 2013
My guess: File names reflected some significant of ordering of, say, observations that gradually focused on some target, similar to a mathematical series expansion. When summing a long series, you start from the "small" end, not the "big" end, or you might loose a large number of small values that are insignificant one by one, but the sum of thousands of them can be quite significant. Adding elements in random order can loose small values.
When traversing an array by a foreach, you expect to get the elements by increasing indexes. Assume that there then comes a new implmentation processing all array elements simultaneously on a highly parallell machine (assume that the handling of each element is independent of the others, no locking issues). Partial results are returned in arbitrary order. This would be similar to processing files in arbitrary order.
A few (5-10?) years ago, I read a description of a new language that makes it explicit that with a foreach, or other set/array operation, the runtime system may process all elements in parallel if several processing units are available. (The compiler have to verify that there is access conflicts.) You can NOT rely on a foreach being sequential, or that the same modification added to all elements of an array is done row-wise or column-wise.
But which language was this about? All I remember is that it came from some large actor, such as Google. In today's description of Go on Wikipedia, I do not see this mentioned. Did I read about a different language? Or did I read some paper that was a proposal for what became Go, but this part of it was dropped from the language defintion? I found no programming language description in Wikipedia that matched my memory.
I considered my question to have a wider scope, and I expected to reach a broader audience, not limited to those who read comments (and reply to them) to a referenced article.
Another detail is of course that my personal privacy control plan says that I should be very restrictive in creating new login accounts where my individual statement may be tracked and correlated with statements on other web sites (that be through cross-site cookies or otherwise). I choose not to create an account on ArsTechnica for making my request there.
Python doesn't do parallel unless you explicitly make it do that, and the above is a C# example, not a Python example.
I guess it just demonstrates yet again we make thousands of assumptions about how things should work, and that gob function is no different. Some assumptions we realize and take into consideration, other assumptions slip through the cracks to be discovered years later. Hopefully this one didn't kill anyone.
Adam was hanging around the garden of Eden feeling very lonely... God asked him, "What's wrong with you?" Adam said he didn't have anyone to talk to. God said that He was going to make Adam a companion and that it would be a woman.
He said, "This pretty lady will gather food for you, she will cook for you, and when you discover clothing, she will wash it for you. She will always agree with every decision you make and she will not nag you, and will always be the first to admit she was wrong when you've had a disagreement. She will praise you! She will bear your children. and never ask you to get up in the middle of the night to take care of them. She will never have a headache and will freely give you love and passion whenever you need it."
Adam asked God, "What will a woman like this cost?"
God replied, "An arm and a leg."
Then Adam asked, "What can I get for a rib?"
I have lived with several Zen masters - all of them were cats.
His last invention was an evil Lasagna. It didn't kill anyone, and it actually tasted pretty good.