4 ms·
None of the other languages you're thinking of are particularly usable as industrial strength languages for general purpose programming, for reasons that go way
by Jweb_Guru 4y ago
None of the other languages you're thinking of are particularly usable as industrial strength languages for general purpose programming, for reasons that go way beyond mindshare.
- pjmlp 4y agoMind reader?
- Jweb_Guru 4y agoI don't need to be a mind reader because I know which languages other than Rust support sound affine types. They broadly fall into three categories: * Languages with comprehensive support for affine types, but that are otherwise too limited to be really useful for general purpose programming. Usually this is due to a lack of industry support. * Languages with bolted on support for affine types where you can't get consistent performance benefits out of code written in that style and it's very difficult to write and compose code written in that style. * Complex languages with advanced type systems that can emulate affine types, and are extremely powerful, but are borderline unusable for any purpose. Like I said, whichever of those three language categories you're thinking of, my reasoning applies. No mind reading necessary! I understand though that you believe safe concurrency has been solved since Modula 3 because you can just lock every object while it's in use (why didn't anyone else think of that?), so maybe you don't really appreciate the vast gulf in usability between affine types in these kinds of languages and in Rust.
- pjmlp 4y agoSee you don't know which languages I mean. I never said such thing about Modula-3, but I do believe indeed that Rust doesn't solve the concurrency problem when accessing external resources in distributed computing. It is nice it has an answer for data concurrency for internal in-memory data structures, that is a tiny slice of solving distributed computing access patterns. Like those languages that you "know", Rust's place is being specialized on deployments where no form of automatic memory management is allowed.
- Jweb_Guru 4y agoNice goal post moving. So which imaginary language with affine types are you referring to? Being specialized doesn't automatically mean being industrial strength or usable.