3 ms·
Animats had a very important point. While magic is so attractive and perhaps even useful in moderation, it causes so much damage in a large code base. In C++,
by vardump 11y ago
Animats had a very important point. While magic is so attractive and perhaps even useful in moderation, it causes so much damage in a large code base.
In C++, you get this damage from for example operator overload abuse (ok for math, not many other defensible uses), template abuse (ok in moderation), ninja exceptions and inheritance (especially multiple inheritance, ugh).
Anyways, if Rust proves to be a feasible workhorse building medium/large systems with bigger teams, it does sound interesting to me. Especially catching concurrency issues at compile time.
I just hope it won't ever become another C++.
- pcwalton 11y agoAnd my point is that nobody would ever deploy this to production. Would you say you're worried about Go becoming C++ if someone posted a quine written in Go to HN? By the way, Rust has no "template abuse", "ninja exceptions", or "inheritance".
- vardump 11y agoI do think Rust is currently the most likely language to become the C++ killer. And attract significant number of developers from other major commercial languages/platforms as well. Rust might eventually become the new industry standard. That'd be a clear improvement for sure. But we'll see what happens. Hopefully there'll be no Rust committees at least.
- Animats 11y agoYou end up with it in production because some lower level library uses it.
- pcwalton 11y agoNo Rust production program will ever transitively depend on a library with a 6502 assembler written in the macro language.
- pjmlp 11y agoYou are missing the point. It is not the ORM library or the 6502 Assembler. It is the library written by the clever guy on the third floor from blue team, for the new product being developed at Corpo X. However I also have seen lots of convoluted code, exactly because such expressiveness is missing from the language. For example, JVM bytecode manipulation or use of external code generators.
- Manishearth 11y ago> However I also have seen lots of convoluted code, exactly because such expressiveness is missing from the language. That's the operating point here. Leave out expressivity, and tons of programmers write convoluted code. Leave it in, and a couple of clever people use it in an over-clever way.