Live data from Hacker News

Still in love with Rust

dpc.pw

81–90 of 186 posts

Re: Still in love with Rust

#81

Earlier quoted context omitted.

I have some projects of that size (ballpark), typically using some Boost (but not heavy on meta programming), Qt, and the likes. A fresh non-incremental compile usually takes less than a minute. I have Rust projects that are many times smaller but take much more time for a non-incremental build. Of course, a large difference is that a fresh Rust build (after a cargo clean ) compiles all its dependent crates, whereas…

Well, what is the point in this comparison then? I'm not trying to say Rust is the fastest compiler on the planet, but really people don't even try to be objective.

If you're comparing, say, a 10 KLOC C++ program vs. a 10 KLOC Rust program, then the comparison is fair IMO. The end user doesn't care whether Rust chooses a different compilation strategy for dependencies.

Re: Still in love with Rust

#82
Am I the only one who really can't stand rust?

I was and still am very much in favor of the ideas and concepts, but when I actually tried to use it my opinion on it turned by 180°:

- The syntax is awful - No dynamic libraries - Slow compile times - Many checks are too stupid to figure out some valid cases (maybe that improved meanwhile)

Re: Still in love with Rust

#83
post #35

Earlier quoted context omitted.

It surely does, my Gtkmm demo application I wrote several years for "The C/C++ Users Journal" still compiles faster than the Rust rewrite in Gtk-rs, when doing fresh build or after minor changes. Lack of binary library support on cargo, not having incremental compilation and linking does hurt.

There is incremental compilation. And cargo doesn't recompile libraries every time. Not sure how you don't know it if you really use Rust.

> And cargo doesn't recompile libraries every time.

Given how often Rust updates, it might as well.

Re: Still in love with Rust

#84
post #24

> Let's face it – typically developers are familiar with OOP, garbage collected, dynamic programming languages. I think most of these programmers, and their project are not the target of Rust? If you're writing Java/C# or higher level languages, you already made the choice to sacrifice some computing efficiency for programming efficiency. I always thought Rust was more destined to convert C and C++ (and D/Swift/Go ?)…

We have three major audiences: * "systems programmers", aka the C and C++ folk * "functional programmers", largely Haskell folk * "scripting programmers", mostly Ruby/Python/JavaScript folk Each has gotten something out of Rust, and also brought some things to Rust.

You're missing the group which Java, C#, Swift, D and Go co-inhabit. Somewhere between "systems" and "scripting".

Re: Still in love with Rust

#86

Earlier quoted context omitted.

There is incremental compilation. And cargo doesn't recompile libraries every time. Not sure how you don't know it if you really use Rust.

yeah, downvote it when you have nothing to say, that's how to make a discussion. Facts: Incremental compilation from 1.24 stable: https://blog.rust-lang.org/2018/02/15/Rust-1.24.html Cargo recompiles dependencies only after "cargo clean" or after Rust version update.

I didn't downvote you.

Cargo surely recompiles common dependencies across crates, unless one uses the workspace trick and even then recompiles do happen.

Just get Gtk-rs, get nightly and then trace the build log. I once even mailed Rust devs about it.

Incremental compilation still isn't up to incremental compilation + incremental linking, which is why I explicitly mentioned both on my comment.

Re: Still in love with Rust

#87
post #85

I was going to try out Rust, then I saw this on the download page curl https://sh.rustup.rs -sSf | sh Really?

Yes.

The script is less than 400 lines, and is pretty easy to audit. We wrote it in such a way to prevent some issues like "if the download gets cut off only part of the script gets run." It's served over HTTPS.

You can also probably get an install from whatever package manager you use, if you prefer that.

Re: Still in love with Rust

#88
How does data-centric work? How is it different from OOP? Can someone elaborate for a person using python?

Also, what opinion rust devs have over golang?

Re: Still in love with Rust

#89
post #86

Earlier quoted context omitted.

yeah, downvote it when you have nothing to say, that's how to make a discussion. Facts: Incremental compilation from 1.24 stable: https://blog.rust-lang.org/2018/02/15/Rust-1.24.html Cargo recompiles dependencies only after "cargo clean" or after Rust version update.

I didn't downvote you. Cargo surely recompiles common dependencies across crates, unless one uses the workspace trick and even then recompiles do happen. Just get Gtk-rs, get nightly and then trace the build log. I once even mailed Rust devs about it. Incremental compilation still isn't up to incremental compilation + incremental linking, which is why I explicitly mentioned both on my comment.

To clarify two things you've said:

1. Hacker News won't let you downvote someone who replies to you, so it is literally impossible for you to have downvoted in this situation.

2. Both of you are correct, because you're talking about different things. Evgeniy means "You only need to compile your dependencies upon the first build", and you mean "if I use the same dependency in two projects, it will be compiled twice, once on the initial compile of both."

Re: Still in love with Rust

#90

Am I the only one who really can't stand rust? I was and still am very much in favor of the ideas and concepts, but when I actually tried to use it my opinion on it turned by 180°: - The syntax is awful - No dynamic libraries - Slow compile times - Many checks are too stupid to figure out some valid cases (maybe that improved meanwhile)

You are not.

- No dynamic libraries

This is technically incorrect, but practically correct, by the way.

> (maybe that improved meanwhile)

The next version, released on December 6th, ships "non-lexical lifetimes", which does make the borrow checker smarter.

Post reply on HN