4 ms·
Could you explain your thinking a bit more? To me the "language of diplomacy" equivalent for computers sounds more like C calling convention, HTTP and XML or JS
by oriolid 2y ago
Could you explain your thinking a bit more? To me the "language of diplomacy" equivalent for computers sounds more like C calling convention, HTTP and XML or JSON.
- torstenvl 2y agoNobody is saying there is a programming equivalent of the language of diplomacy. He said that using Rust to achieve memory safety is analogous to using French for diplomacy, in that, whatever value the language itself might bring to that goal, you are not likely to achieve it if you are not proficient. If you are not proficient in French, you likely ought not to conduct diplomacy in French. If you are not proficient in Rust, you likely ought not to achieve memory safety by writing everything in Rust.
- oriolid 2y agoOk, I'll try to explain. - French itself does not add much value to diplomacy. The reason to use is that everyone else who does diplomacy is expected to know French (and probably isn't a native speaker which makes things a bit more equal). English is probably taking over there, like it has done in other domains. - The recent C++ versions are not actively promoting shooting yourself in the foot like older variants, but they aren't exactly trying to prevent it. - Rust is going out of its way to prevent writing memory unsafe code. It is still possible if you know what you are doing, but just trying out stuff at random is more likely to give you a compile-time error than undefined behaviour. - Most programmers aren't very competent, not matter what they believe about themselves. With Rust they are less likely to commit serious errors. Or get anything done, but that's a separate discussion. The French will probably point out your pronunciation mistakes too before continuing discussion, but that's also not the point here.
- peoplefromibiza 2y ago> - French itself does not add much value to diplomacy. Funny, given that the word diplomacy is a French word, together with embassy, treaty, alliance, passport and protocol :) > Rust is going out of its way to prevent writing memory unsafe code But if someone is not proficient in Rust it will only slow them down and they'll end up fighting the language and the compiler instead of using the language. It's a common complain among non Rust programmers. > Most programmers aren't very competent I strongly believe Andreas Kling is very competent. For the rest of us who are not him, incompetence does not go well in hand with Rust, which is a very complex language. EDIT: pretending that a very proficient C++ programmer will chose Rust because "it's 2024" it's the same thing as pretending that they will chose Haskell, which is equally memory safe and also equally complex. Why nobody ever recommend Haskell or Smalltalk? It doesn't seem much like a discussion about memory safety to me, but rather promoting Rust.
- oriolid 2y ago> Funny, given that the word diplomacy is a French word This is true. But it only tells about the cultural dominance that France had at the time the convention started. If history had happened differently, Chinese, Hindi or something else could be in similar position. > But if someone is not proficient in Rust it will only slow them down and they'll end up fighting the language and the compiler instead of using the language. This is indeed the choice. Make it difficult to write code but more likely that the result is correct, easy to achieve high performance but risky (C++ and similar) or just accept the overhead of checking everything over at run time (JVM and CLR languages, etc). I would say there is a niche for the first. > Why nobody ever recommend Haskell or Smalltalk? I think at this point it's well known that the pure functional lazy evaluation model rules out too many useful data structures and makes it easy to introduce accidental complexity. As for Smalltalk, it seems (I've never actually used it) to me that most of its once unique ideas have been copied to current mainstream languages. It also seems to have a huge number of fragmented implementations and most of them seem to have a heavy runtime virtual machine.
- peoplefromibiza 2y ago> This is true. But it only tells about the cultural dominance that France French is still very much relevant, but it took centuries to make it less relevant than before to the point where we are now. Rust in comparison is minutes old and there's no evidence it will dominate the field of system programming in the future. See: Ruby on Rails for web development. > This is indeed the choice. Make it difficult to write code but more likely that the result is correct I don't buy it. Making it hard to write code it's nobody's choice, it's accidental complexity, that any sane language designer would avoid if possible, because it severely hinders the language adoption. The opposite is also true: code easy to write will also be more easily correct. Elixir is easy to write and will almost automatically be correct in complex scenarios such as distributed systems. > pure functional lazy evaluation model rules out too many useful data structures Rust is Haskell with a different syntax though and makes it very hard to write simple linked lists. > most of its once unique ideas have been copied to current mainstream languages same happened to FP, ROR and it's happening with Rust Even Java is more functional than ever, because it's a good paradigm, not because it's a fad. Again: this seems to me more promoting Rust than a discussion about memory safety and I am really not interested in that. So I'll see myself out.
- deleted 2y ago[deleted]
- torstenvl 2y agoDon't do this. Requesting an explanation just to get an excuse to launch into a spiel is deeply dishonest. Furthermore, ideological battle is against HN Guidelines.