In my experience, legal and tax complexities are more than sufficient to restrict the countries that we have remote workers living in.
We work globally so practical things like timezones aren't really a factor; we have plenty of experience working around them. That even goes as far as things like personal security in locations that are particularly dangerous. In my line of work that usually means risk of kidnapping. It will be a factor we take into account but wouldn't usually be decisive.
Having said that, I have been involved in setting up multiple offices in new locations. But only where we're expecting to have a significant presence over the long term. Essentially, where we can amortise the costs of legal and tax expertise.
Source: reasonably senior executive at a very large, global financial organisation.
It could of course. It can do pretty much any pattern matching it likes. But I doubt very much it would because that pattern is way less common.
As the article points out, the XOR saves 3 bytes of instructions for a really, really common pattern (to zero a register, particularly the return register).
So there's very good reason to perform the XOR preferentially and hence good reason to optimise that very common idiom.
Other approaches eg add a new "zero <reg>" instruction are basically worse as they're not backward compatible and don't really improve anything other than making the assembly a tiny bit more human readable.
That'll definitely help. But you need a certain amount of forced re-distribution to reduce relative poverty significantly below 30% because it's defined as 60% of median.
Either that or find a way to significantly reduce the number of children that people in the bottom 30% are sprogging.
So, I am saying Capitalism is the cause, not the solution. Capitalism concentrates wealth and you need a redistribution system if you want that to not result in child poverty. It's not rocket science.
> why we define the Action as this object and why we should expect it to be minimised for the physical trajectory in the first place.
The most coherent explanation I've heard was from Feynnman [0]. As far as I understand it (and I may well not have understood it at all well), at the quantum level, all paths are taken by a particle but the contributions of the paths away from the stationary point tend to cancel each other. So, at a macroscopic level, the net effect appears to be be that the particle is following the path of least action.
> a proof of the equivalence to Newtonian mechanics
The Lagrangian method isn't really equivalent to Newton's method. Again, Feynman talks about this in [0]. It's that for a certain class of action, the Euler-Lagrange equations are equivalent to Newton's laws.
It's perfectly plausible to come up with actions that recover systems that represent Einsteinian relativity or quantum mechanics. This is the main reason (as I understand it) why it's considered a more powerful formalism.
The Saxon and Norse kings didn’t use numbers, and the numbers that the post-Norman invasion kings used only started with them (so Edward “Longshanks” was Edward I, despite several Saxon kings Edward).
But if the next king of the UK decides to use the name “Aethelstan”, he wouldn’t be a II. (However, they are supposed to count Scottish kings now, so he could be “Macbeth II”.)
Sure but, in fairness, the HN title is a bit misleading. The paper says that the bodies are emitting light in the visible part of the EM spectrum not that the light is visible. And the intensity isn't really high enough to see the light without instruments.
True, there's an ambiguity in "visible light" between "EM radiation within the visible frequency range" and "EM radiation within the visible frequency range which is of sufficient intensity that we can detect it with our eyes"
But this is independent of the misconception that the radiation observed in this experiment is thermal. Thermal radiation in the visible range at this temperature is much lower in intensity than the biological radiation observed here, but both kinds of radiation are well below the intensity that we can see with our eyes.
It means that the current system provides free child care if your household income is less that 4x the federal poverty level. The new scheme doesn't restrict by income.
The owned memory may be on a stack frame or it may be heap memory. It could even be in the memory mapped binary.
> Why would a stack frame want to move ownership to its callee
Because it wants to hand full responsibility to some other part of the program. Let's say you have allocated some memory on the heap and handed a reference to a callee then the callee returned to you. Did they free the memory? Did they hand the reference to another thread? Did they hand the reference to a library where you have no access to the code? Because the answer to those questions will determine if you are safe to continue using the reference you have. Including, but not limited to, whether you are safe to free the memory.
If you hand ownership to the callee, you simply don't care about any of that because you can't use your reference to the object after the callee returns. And the compiler enforces that. Now the callee could, in theory give you back ownership of the same memory but, if it does, you know that it didn't destroy etc that data otherwise it couldn't give it you back. And, again, the compiler is enforcing all that.
> Why can mutable reference be only handed out once?
Let's say you have 2 references to arrays of some type T and you want to copy from one array to the other. Will it do what you expect? It probably will if they are distinct but what if they overlap? memcpy has this issue and "solves" it by making overlapped copies undefined. With a single mutable reference system, it's not possible to get that scenario because, if there were 2 overlapping references, you couldn't write to either of them. And if you could write to one, then the other has to be a reference (mutable or not) to some other object.
There are also optimisation opportunities if you know 2 objects are distinct. That's why C added the restrict keyword.
> If I'm only using a single thread
If you're just knocking up small scripts or whatever then a lot of this is overkill. But if you're writing libraries, large applications, multi-dev systems etc then you may be single threaded but who's confirming that for every piece of the system at all times? People are generally really rubbish at that sort of long range thinking. That's where these more automated approaches shine.
> hide information...Why, from whom?
The main reason is that you want to expose a specific contract to the rest of the system. It may be, for example, that you have to maintain invariants eg double entry book-keeping or that the sides of a square are the same length. Alternatively, you may want to specify a high level algorithm eg matrix inversion, but want it to work for lots of varieties of matrix implementation eg sparse, square. In these cases, you want your consumer to be able to use your objects, with a standard interface, without them knowing, or caring, about the detail. In other words you're hiding the implementation detail behind the interface.
We work globally so practical things like timezones aren't really a factor; we have plenty of experience working around them. That even goes as far as things like personal security in locations that are particularly dangerous. In my line of work that usually means risk of kidnapping. It will be a factor we take into account but wouldn't usually be decisive.
Having said that, I have been involved in setting up multiple offices in new locations. But only where we're expecting to have a significant presence over the long term. Essentially, where we can amortise the costs of legal and tax expertise.
Source: reasonably senior executive at a very large, global financial organisation.