5 ms·
I've been dabbling in some Rust lately and as a long time mostly-C++-and-Python-and-some-Java dev I've found it relatively easy to get started with it. Sure, a
by blattimwind 8y ago
I've been dabbling in some Rust lately and as a long time mostly-C++-and-Python-and-some-Java dev I've found it relatively easy to get started with it. Sure, a lot of things are different (e.g. struct+impl vs. classes), many clearly better, some that may/may not be better just different, but overall it seems to me like Rust is relatively easy to pick up coming from C++.
And C++ is usually way uglier and far more complicated. I'm currently reviewing a bunch of code using bleeding edge language features and it is extremely difficult to understand what the code is supposed to do and what it might be doing.
The age of multi-vendored languages like C or C++ for systems programming might be coming to an end. I'd wager this is actually a good thing.
- pjmlp 8y agoHistory has proven that system programming language winners come with an OS/platform to cimment their advantage over others. So I don't agree that the age of "The age of multi-vendored languages like C or C++ for systems programming might be coming to an end.", unless you mean we will managed to get rid of all OSes written in them, specially UNIX flavours or GPGPU libraries. It would be nice, but it won't happen until the next big hardware revolution like Quantic computers being developed in Q# for example.
- the_duke 8y agoI was drawn to Rust because, behind the apparent complexity of the borrow checker, the language is/was actually very simple and easy to understand. I have been using Rust extensively for over 2 years. In those two years, the language complexity has increased substantially. It's already at a stage where I'm worried about losing track. Also, there is quite a large amount of changes in the pipeline that were already accepted but are either not finished or not implemented yet. All of those can/will have a significant impact on idiomatic code and API design and will increase the complexity burden: * specialization * generic associated types (a simple form of higher kinded types) * async/await + generators * existential types * const generics ... So I do believe Rust needs to slow down considerably and get much stricter with accepting new features. Both to not overwhelm the existing userbase and to not make the language another C++ in terms of complexity.
- steveklabnik 8y agoOne thing that’s come out of this years’ posts by various people is that, after those features have landed, people generally do want things to be done. These features shore up major weaknesses in the language for various domains, but there’s not really things not in that list that many people still extremely desire.
- the_duke 8y agoTotally agree that the features I mentioned address shortcomings. And while I think Rust could do just fine without GATs, specialization is something I'd really hope for. People will never be satisfied though and always ask for new features.
- z3phyr 8y agoTry Zig too. Its on the stage when rust was 0.4 alpha, but it has some very great ideas and its really simple
- tzjmetron 8y agoI didn't see any USP for Zig. The syntax is also extremely crufty.
- amelius 8y ago> The age of multi-vendored languages like C or C++ for systems programming might be coming to an end. I'd wager this is actually a good thing. That's because you can't make money writing compilers anymore.
- kentrado 8y agoWhy?
- dullgiulio 8y agoLLVM and GCC are dominating the space and pretty much killed propretary compilers.
- baq 8y agoRust both greatly benefits from and is encumbered by LLVM. Maybe there’s room for a different LLVM-like or perhaps LLVM compatible project.
- dullgiulio 8y agoInteresting, what do you think makes is encumbered by LLVM? I thought that sqeezing MIR in the middle Rust could get both Rust-specific transformations and then benefits from the LLVM generic code optimizations...
- steveklabnik 8y agoIt can! LLVM is fantastic, but it's also a huge C++ component, and it's not necessarily optimized for speed. It would be nice to end up with something in Rust to simplify the toolchain needed, and to maybe have something that could be even faster for debug builds.
- SSLy 8y agoAnyone knows if intel parallel studio is profitable?