← Back to context

Comment by pjmlp

1 day ago

The practical and useful innovations were invented else, Rust made them mainstream.

Yes.

The biggest innovation of Rust is bringing some of the good ideas from functional programming to low level programming. I'd also say that partially exposing data flow analysis to a proframmer is new.

Rust package management is quite good, and also not by any means an invention.

I am still not a fan of all the ugly macro programming systems and verbose syntax in the language.

  • Macros in Rust are really ergonomically terrible. Zig's approach here is way better.

    The language I really want is somewhere inbetween those two languages.

The borrow checker in Rust is frankly novel. Cyclone had something somewhat similar, but not the same.

The broader ML-like type system in Rust is not novel, but the integration of the borrow checker -- and its move semantics more broadly -- with it... that form honestly is an innovation. And one I'd have a hard time living without at this point.

  • True! the borrow checker is a special thing. This is what i mean when i say "explicit data flow analysis".

    In a way this is compiler internals exposed to a programmer.