5 ms·
So true. I want rust to take off, as even bounds checking at compile time would save me a lot of trouble. I don't know if I'll ever be able to deal with the c
by R_haterade 9y ago
So true.
I want rust to take off, as even bounds checking at compile time would save me a lot of trouble.
I don't know if I'll ever be able to deal with the community, though.
On the other hand, I've never seen people get as passionate about c++ as I have python and rust, so maybe that says something about the benefits, even if its just as beginners see them.
- vvanders 9y agoI think you see people passionate because they've dealt with all the pain around C++. That said I don't agree with the GP. As much as I like Rust there's still a ton of areas that keep Rust from being used today. Library selection, even though it's hard to hire for C++, it's easier than Rust and a few other things. That said for all my personal/greenfield stuff I've been using Rust and really happy with it.
- vertex-four 9y agoThere's a lot of people passionate about it because it's the first low-level language that's reasonably approachable to people who mostly code in Python/Ruby/etc - you rarely ever have to pull out a debugger, for example.
- vvanders 9y agoHaha, oh you definitely have to pull out the debugger. Rust doesn't save you from logic errors, control flow issues and ffi gone wrong. That said I get your point about using the debugger less.
- vertex-four 9y agoHonestly, my programs tend to be simple enough that logic errors are reasonably rare, and the ones that do pop up can be resolved by println debugging. :)
- E6300 9y ago> Honestly, my programs tend to be simple enough that logic errors are reasonably rare That says more about the particular programs you write than about the language, frankly. Writing trivial bug-free programs is easy in any language. The trick is writing complex bug-free programs. > println debugging This is something you should only need to do if you have a wretched debugger of if you're working on a bug where the presence of the debugger alters its behavior.
- vertex-four 9y ago> Writing trivial bug-free programs is easy in any language. Not really. Writing programs which don't crash the first few times I run them in a dynamic language is surprisingly hard. Just having a compiler prevents having to get to that point - and then Rust ensures that I handle potential errors correctly and avoid segfaults. > This is something you should only need to do if you have a wretched debugger of if you're working on a bug where the presence of the debugger alters its behavior. Or if I can't be arsed configuring gdb with breakpoints for everything from the command line. I can add a println!(), save my file, and watchman will recompile and run my program in a much more reasonable (to me) workflow. I assume that I can somehow integrate gdb into my editor, but that involves a pile of learning new things. For a so-called "trivial" app I'm most of the way through writing right now, is an OpenID Connect and SCIM server that has had to implement a decent chunk of functionality (JWTs, key fetching and caching, juggling between postgres and redis, etc) from scratch. But for most of the particularly fiddly parts, I've managed to have the type system ensure that I either outright can't have logic errors or they're detected and the program panics, which is rather nice.
- E6300 9y ago> Writing programs which don't crash the first few times I run them in a dynamic language is surprisingly hard. Writing correct programs in JS is difficult, I agree. Writing correct trivial programs is easy, though. > Or if I can't be arsed configuring gdb with breakpoints for everything from the command line. I can add a println!(), save my file, and watchman will recompile and run my program in a much more reasonable (to me) workflow. I assume that I can somehow integrate gdb into my editor, but that involves a pile of learning new things. That's not a third alternative, that's just gdb being wretched, as it's always been.
- timlyo 9y agoI find that within the Rust community people are amazing, it's just at the boundaries that I've found problems.