4 ms·
> We should not bury C++ prematurely before answering the question - "what else is as fast and efficient as to replace it for OOP?" We have an answer: Rust. It
by raggi 4y ago
> We should not bury C++ prematurely before answering the question - "what else is as fast and efficient as to replace it for OOP?"
We have an answer: Rust.
It's no longer premature, bury it.
- aswanson 4y agoAmen.
- j16sdiz 4y agoRust is over engineered in some area, immature in other. See how many reference types are there, how async is handled and the underspecified unsafe semantic. For higher level tasks, I prefer a language with GC like go or java. Rust can work with references counting, but it don’t mix well with the larger ecosystem. For lower level task, the underspecified unsafe model make it worse than C aliasing problem
- unrealhoang 4y ago> See how many reference types are there, 2, & and &mut. What else?
- kaba0 4y agoI guess parent meant ARC, RC, and the like.
- ilyt 4y agoI vastly prefer "just write you code serially and never worry about async then spawn 10000 goroutines" approach over async/await/Future nexus of bad ideas (just do message passing like Erlang or don't do it at all...), but I wouldn't use Go in place where I'd use Rust and vice versa, they kinda feel different (if overlapping in places) niche
- lanstin 4y agoIt is very freeing. And one concise readable go routine doing the channel reads and the socket ops becomes your connection pool, but is as easy to understand as a Network programming 101 assignment.
- verdagon 4y agoHow's Rust at doing OOP these days? (Assuming we're in a domain or situation where OOP is a good choice, of course.) I would love to know about any projects that do OOP well in Rust.
- nicoburns 4y agoIMO Rust has most of the best bits of OOP (the ability to encapsulate functionality in an object with private fields and present a restricted public interface), without the bad bits (inheritance, and complex soups of objects all holding pointers to each other that make code flow hard to reason about)
- HideousKojima 4y agoRust isn't OOP though. Structs, traits, etc. let you approximate some aspects of OOP, but not much more than plain old C does.