5 ms·
The language “legalese” was invented when it turned out that being proficient in English does not protect you against malicious contract partners. (The success
by elygre 2y ago
The language “legalese” was invented when it turned out that being proficient in English does not protect you against malicious contract partners.
(The success of legalese is still debated, but its existence is generally accepted)
- peoplefromibiza 2y agolegalese is a subset of English. BTW Rust (or any other so called "memory safe" language) is not the equivalent of legalese, it's the equivalent of using French because it's the "language of diplomacy" (that's why many English words come from French) instead of English. If you're not proficient in French, French legalese won't save you.
- oriolid 2y agoCould 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