Earlier quoted context omitted.
You say this language will fail because most languages fail. Ok, make a falsifiable statement and I'll take a bet on that.
You seem very confused. I have not, in fact, said this language will fail. Bets are not interesting. I would like for Rust not to fail, but do not see the things happening that would prevent it.
Rust – A hard decision pays off
281–290 of 386 posts
Re: Rust – A hard decision pays off
#282Earlier quoted context omitted.
A lot of people seem to believe that dynamically typed languages make development easier, because you don't have to worry about writing type annotations or going through the extra steps to fix compile-time errors. This is arguably true for small scripts, but for anything non-trivial I find that static typing means I can be more productive, because type errors are caught straight away (rather than potentially in produ…
> I find that static typing means I can be more productive, because type errors are caught straight away I agree completely. I feel like there’s a pretty common arc among programmers: 1. learn to program using verbose statically typed languages 2. discover fun dynamically typed languages, eschew statically typed languages 3. discover dynamically typed languages are a shitshow for large real-world projects 4. re-disco…
auto x { get_something_complicated() };
or foo(int x) -> auto {
return get_something_complicated(bar(x));
}
so it's less "not-fun" these days.Re: Rust – A hard decision pays off
#283Earlier quoted context omitted.
> Agreed, but I think people make too big a deal about iterators. I may just have more time to dick around, but I've been forcing myself to write everything as an iterator in Rust (instead of a for loop) just to learn the paradigm and, honestly, it's been pretty great. First, there is a performance impact. You may think this would be small, but, in my experience, it can be relatively large. There must be several reas…
I mean, I definitely have tried to rewrite stuff as iterators even when it isn't convenient. I only got to that working example by dedicating a few hours with the good people on the Rust Discord trying to make it work (a lot of seasoned Rustaceans also weren't able to get it working, it was a collaborative effort that took a fair amount of time and rhapsodizing). And even then, the result is pretty ugly (I don't thin…
Re: Rust – A hard decision pays off
#284IMHO - a db is all core. Everything should be fast. Even the CLI tools - Rust is pretty good at cli tools. Why is he building a database out of python? How much python is in this repo anyway?
Also this is a Python + C++ app - not python. And the article critiques python, not c++. Which is weird, because I would have thought the source of problems would have been C++ not python.
Don't get me wrong - Rust is great. Cargo is great too. Compiled programs are great to deploy rather than python (pip hell) and C++ ({CMAKE_HELL}). But this is apples to oranges comparison.
The things that make Rust better than C++ / Python are not the things this article talks about.
Re: Rust – A hard decision pays off
#285This doesn't surprise me and matches my own experience. Rust literally makes a codebase nearly void of most bug classes with the exception of logic bugs (Unfortunately, in a huge codebase, there can still be tons and tons of logic bugs). Still, when I migrated my Python codebase to Rust I got rid of whole classes of bugs and honestly code faster in Rust on a "per debugged line of code" basis. In Python, every line MU…
The unique safety features of Rus are all about memory safety, which is not something you have to worry about at all in Python. I can only assume that the bug classes you are referring to would have been eliminated by using essentially any language with a type system.
That's not entirely true. As an easy example, Go has a type system but it's relatively anaemic and recreates the "billion dollar mistake" of nil. I have personal experience with Go applications that have broken in production due to nil dereferences, to bugs related to type-switching off `interface{}`, and to the language's inability to enforce exhaustive case statements in general.
While the unique safety features in Rust are generally about memory safety, it still takes a much more safety-conscious approach in general than most languages that are statically typed.
Re: Rust – A hard decision pays off
#286Earlier quoted context omitted.
A lot of people seem to believe that dynamically typed languages make development easier, because you don't have to worry about writing type annotations or going through the extra steps to fix compile-time errors. This is arguably true for small scripts, but for anything non-trivial I find that static typing means I can be more productive, because type errors are caught straight away (rather than potentially in produ…
> I find that static typing means I can be more productive, because type errors are caught straight away I agree completely. I feel like there’s a pretty common arc among programmers: 1. learn to program using verbose statically typed languages 2. discover fun dynamically typed languages, eschew statically typed languages 3. discover dynamically typed languages are a shitshow for large real-world projects 4. re-disco…
(Obviously, I am talking about CS students here, not about the general public who just want to learn what writing a program means)
Re: Rust – A hard decision pays off
#287Earlier quoted context omitted.
I guess I’m rooting for Rust in the long game sense, which is a different set of imperatives than the hang the hashtag on peripheral stuff sense. I use a lot of great software written in Rust, it’s demonstrably a good vehicle for great software. But too many of its fans are advocates , this can start to seem like an agenda. Don’t take engineering advice from people with an agenda.
Thank you for pointing this out. Lately I've been getting a culty feeling around Rust which has been turning me off to learning it.
I find this particularly compelling because Rust generally does not market itself towards novice developers. At least until very recently, I've seen Rust communities actively discourage novices from trying to learn Rust. Not that it's inherently a bad language to learn as one's first, but there just haven't been great resources for people to learn it if they don't already have some previous software experience. The net effect of this is that the enthusiasm you're seeing is coming from a much higher proportion than usual of people who've been in the industry awhile, and not from as many fresh college or bootcamp grads.
Re: Rust – A hard decision pays off
#288Earlier quoted context omitted.
You seem very confused. I have not, in fact, said this language will fail. Bets are not interesting. I would like for Rust not to fail, but do not see the things happening that would prevent it.
You said, "The language is still more likely than not to fizzle." What's the distinction between "fail" and "fizzle"?
Re: Rust – A hard decision pays off
#289Re: Rust – A hard decision pays off
#290> Dev velocity, which was supposed to be the claim to fame of Python, improved dramatically with Rust. I don't doubt this in the least. I've been a professional Python developer for 15 years, and I can't believe Python ever had the reputation for "high dev velocity" beyond toy examples. In every real world code base I've worked in, Python has been a strict liability and the promise that you can "just rewrite the slow…
I'd argue that C# (dotnet core) is a much better option than Go for an easy GC language with max productivity and great performance ceiling.