3 ms·
@steveklabnik what would you say are the core tenets of Rust's success? From Python's side (as a Python prosumer), I'd say Python's core tenets may be: - Build
by yingw787 7y ago
@steveklabnik what would you say are the core tenets of Rust's success? From Python's side (as a Python prosumer), I'd say Python's core tenets may be:
- Building an explicitly and observably welcoming open source community
- Separating corporate money from technical direction, even at the cost of faster execution
- Upholding pragmatism over all else (e.g. keeping around a C/C++ API)
I'm not sure whether these principles carry over to all languages, or if there's anything you want to add or subtract. Would be cool to have a broadly applied philosophy endorsed by many language stakeholders.
- steveklabnik 7y agoI think this answer would be a bit too long, and I don't have time at the moment. I'll get back to you at some point :) A quick response to your points: I'm not sure "upholding pragmatism over all else" applies to Rust. It really depends on the details. Open source community is absolutely important, and while you can argue that money is separate from technical direction, that's a very complex topic.
- dan00 7y agoFor me - from the language standpoint - it's a sweet post between correctness, pragmatism, high level and low level. I might be a strange guy liking Haskell and C++. ;)
- tomcatfish 7y agoAs a CS major in school who is mostly self taught using the internet, I'd say Rust's big win is how it takes basic concepts from low to high level without bothering me or killing performance entirely. Just the presence of well integrated Algebraic Data Types (ADTs) makes an incredible amount of difference. They are used to represent errors in a meaningful and easy to understand way (```Result<T>```), are used to show that a function may or may not return a meaningful value without needing a garbage value (```Option<T>```), and the optional case can even be used to wrap a null pointer scenario in a safe way (```Option<Ref<T>>``` being the closest to a literal translation I think). That's just one small feature that permeates the language. Whatever the opposite of a death-of-a-thousand-cuts is, Rust has it.