3): The features bound to a standard, library or "core language", is part of the language. A complex feature is difficult to implement correctly regardless of where that feature lives. The "whizzy" features of Rust may be great, but "whizzy" features will not see as significant as adoption if more difficult to implement. The more readily shared implementations of libraries built on "lower level" features is a good thing. (I'd much prefer library only additions to C/C++. You can easily shunt a library, but you can't readily extend a compiler if the feature has an entirely different grammar.)You can even see that exact scenario play out in Rust; look at the thoughts related to "unsafe". If "unsafe" did not exist, the language would not be as readily capable of "self hosting".