nikomatsakis / rust-design-axioms

Discovering and describing Rust's design axioms
https://nikomatsakis.github.io/rust-design-axioms/
Other
67 stars 3 forks source link

The axiom of orthogonality and composability should have higher priority #15

Open xurtis opened 10 months ago

xurtis commented 10 months ago

I feel that the orthogonality and composability axiom is underrated in its current position. It plays a role in the versatility story and i think contributes to many of the other axioms as well.

For versatility, it means you can pick as few or as many of the benefits of Rust as you need when adopting for a particular portion of your project.

For accessibility, it means that you can learn the aspects of the language that are important to your use-cases without needing to understand interactions with aspects that aren't relevant to you.

For reliability, it means that the interface and design of one set of features is unaffected by the development of another, as is often the correctness of the implementation.

For performance, it means that users aren't charged the costs of features they don't use.

For the community driven nature of the project, it means that one team can focus on developing one set of features independent of teams working on others allowing Rust to develop and grow rapidly in multiple directions simultaneously.

To me, the axiom of orthogonality and composability is possibly the most important to the project as a whole.