So why did Mozilla adopt Rust?
I have picked up a bit of Rust history from various presentations on YouTube and elsewhere. As far as I can make out Rust has changed a lot since it's inception, originally it had garbage collection, it had a complex run time, there was no borrow checker. It was not suitable as a systems programming language.
Perhaps I'm missing some other fine features Rust had back then but this makes it sound it was just another programming language with nothing much notable to distinguish it from the thousands of others, old and new.
So I'm curious, what was the turning point that convinced Mozilla to get behind Rust? Why? When?
As it turns out Rust seems to be unique in checking of aliasing and lifetimes whilst being as performant as C/C++.
Aside: Tangentially I was thinking of the Turning Machine. In definitions of the Turing Machine I have seen that infinitely long tape that it uses starts out initialized to some symbol, "blank" for example. That means that a Turing Machine is totally deterministic in operation.
Now, with many programming languages it is quite possible to use uninitialized memory, be that by simply not initializing something before use, or using rogue pointers, or whatever. That means that most source code texts one can create that actually compile are random number generators rather than deterministically executing programs.
As far as I can tell, Rust with it's type and borrow checking does actually give us a Turing Machine.
Which I find hugely significant.