Why are you doing this?
- Existing languages at this level of abstraction and efficiency are unsatisfactory. In particular:
- Too little attention paid to safety.
- Poor concurrency support.
- Lack of practical affordances, too dogmatic about paradigm.
What are some non-goals?
- To employ any particularly cutting-edge technologies. Old, established techniques are better.
- To prize expressiveness, minimalism or elegance above other goals. These are desirable but subordinate goals.
- To cover the “systems language” part all the way down to “writing an OS kernel”.
- To cover the complete feature-set of C++, or any other language. It should provide majority-case features.
- To be 100% static, 100% safe, 100% reflective, or too dogmatic in any other sense. Trade-offs exist.
- To run on “every possible platform”. It must eventually work without unnecessary compromises on widely-used hardware and software platforms.
via Project faq – rust – GitHub.