3 ms·
Before Rust everybody[1] seemed to believe we cannot have a safe and natively compiled language. Rust proved the opposite. I don't see why we can't have clean,
by weinzierl 3y ago
Before Rust everybody[1] seemed to believe we cannot have a safe and natively compiled language.
Rust proved the opposite.
I don't see why we can't have clean, low noise, high signal syntax in a language like Rust. My criticism is not the syntax that makes the language more expressive - that's essential complexity.
I would want the accidental complexity removed, like the somewhat redundant distinction between dot and double colon.
And I wish the cognitive load reduced by making the syntax as familiar as possible to as many people as possible. That's the reason I mentioned Javascript and Python - not only is their syntax more concise but also familiar to more people.
When it comes to the snake case study, I'm not surprised at all.
They did not control for the size each identifier took on the screen. That a bigger signal enables a faster response is common sense. Longer identifiers are easier to recognize but the downside is that they take away space we could use for other important things. That's why most languages keep the most frequent ones (like variable names) short and free from unnecessary noise like underscores. Also the sample size in the study was extremely small.
[1] Except the Haskell/ML folks, naturally.
- Ygg2 3y ago> I don't see why we can't have clean, low noise, high signal syntax in a language like Rust. My criticism is not the syntax that makes the language more expressive - that's essential complexity. As I pointed in Matklad's post you need to add those concepts in or devise a way to infer them, side by side comparisson of Rust/JS is meaningless if one has no concept of lifetime or one abstracts details via GC. > Before Rust everybody[1] seemed to believe we cannot have a safe and natively compiled language. I do agree, but you can't avoid all trade-offs. Rust got safe, natively compiled language by increasing type complexity (adding lifetimes and ownership), and adding more sigil noise. If Rust had GC it would be way simpler and way less usefull. > like the somewhat redundant distinction between dot and double colon I don't think it's redundant. But I'm not a Rust compiler guy.