Y
HN Search
Hacker News Search
new
|
comments
|
top
|
jobs
estebank
searching PlanetScale…
1.
▲
2.
▲
3.
▲
4.
▲
5.
▲
6.
▲
45 ms
·
781.
▲
by
estebank
3y ago
You could conceivably encounter cases where cargo init sets your project to 2021 edition and you're following a 2015 tutorial and encounter compilation errors due to edition differences, but when these happen the error should have enou
782.
▲
by
estebank
3y ago
If you encounter these kind of things, and the tooling doesn't explicitly and clearly tell you what, when and why things have changed, that's a bug and I would appreciate a bug report.
783.
▲
by
estebank
3y ago
It is already a huge change if people who drive to thir offices didn't. People going camping or driving across the country aren't the problem. The Dutch do that as well, what they don't need to do is having to drive to go f
784.
▲
by
estebank
3y ago
As much effort as the team outs on having a coherent progression and cater to as many customers as possible, Rust is still a show-up-ocracy. If there aren't people with enough desire to implement a proposal, it doesn't happen. Fea
785.
▲
by
estebank
3y ago
> We naturally use Rust enums to describe these states. How nice it would be if Rust's enum system was rich enough to be able to describe and enforce the valid state transitions rather than just the set of possible states. There are
786.
▲
by
estebank
3y ago
> How many refactorings per time unit could a smart coder do in both ecosystems? I've found that refactors are more involved in Rust (because of some "viral" features that require changing code in a lot of places, adding l
787.
▲
by
estebank
3y ago
It does the same thing as the Go version. The Go version requires you to pass into the context the data to be sent back to the client, while the Rust version uses the return value of the function as the data to be sent back. The framework t
788.
▲
by
estebank
3y ago
> All in all your points are mostly valid (i don't fully understand all your arguments about versions as integrity should be handled by git) If you depend on github.com/owner/foo@1.0.0, there's nothing stopping owner
789.
▲
by
estebank
3y ago
> The only value a registry like crates.io provides is to have shorter human readable names instead of git repo urls. Possibly together with the ability to run some analytics on what some people write in rust. This is purely cosmetic and
790.
▲
by
estebank
3y ago
To add to this, the following is valid: fn take_foo(x: Foo) -> Foo { let mut x = x; x.field = 0; x } The ownership semantics ensure that because there's a single owner of Foo at all times, it is
791.
▲
by
estebank
3y ago
> I now wonder if a "compiler database engine" could help, so you can store the lexemes, sources, inferences, etc and query them. rustc already does this https://rustc-dev-guide.rust-lang.org/queries/query-
792.
▲
by
estebank
3y ago
`cargo test` and `cargo run` are just as scary as proc-macros and build.rs files. The only difference is that these two last ones can be executed automatically by rust-analyzer when opening a project, but that should be something to be tack
793.
▲
by
estebank
3y ago
Sorry, the names we use within the team are not meant to be used in user facing communications, but it is easy to forget that not everyone I talk to isn't in the team :) TAIT stands for `type Alias = impl Trait;`, which would let you d
794.
▲
by
estebank
3y ago
Thank you for the list! That's useful for me to understand what we might not be actively working on that people find frustrating. - Async traits: coming soon https://blog.rust-lang.org/inside-rust/2023/05/
795.
▲
by
estebank
3y ago
Could you expand on what language issues you want resolved that the project isn't addressing?
796.
▲
by
estebank
3y ago
Is there any language toolchain that isn't absolutely static capable of having not only backwards compatibility but also forwards compatibility? If I try to open an MS Office XP file in MS Office 97, it will fail. If I try to run a
797.
▲
by
estebank
3y ago
If you're looking for something with a narrative you can watch, the RustConf 2018 closing keynote https://www.youtube.com/watch?v=aKLntZcp27M is a great talk that has an overview on "generational arenas", whi
798.
▲
by
estebank
3y ago
> Rust wins on a few benchmarks like regex-redux, which is a pointless benchmark as they're both just benchmarking the PCRE2 C library, so it's really a C benchmark. The Rust #1 through #6 entries use the regex crate, which is
799.
▲
by
estebank
3y ago
> They're not blocking hn, they're blocking users who have visited hn. IIRC, they used to block only on the referrer, until HN removed the referrer only for their domain (and I believe after that was pointed out from all outb
800.
▲
by
estebank
3y ago
The alternative would be for Rust to generate machine code for the following enum Foo { Bar, Qux([i32; 1024]), } as if the user had written enum Foo { Bar, Qux(Box<[i32; 1024]>),
801.
▲
by
estebank
3y ago
> I wonder how tractable it would be for the compiler to suggest when your API needs Rc or boxing without being just as wrong in other cases. A lot of the cases I've seen so far require some kind of global analysis, that we don
802.
▲
by
estebank
3y ago
> But in rust you can’t do a->b. You need to write (*a).b. For what is worth, I think that we'll add that at some point.
803.
▲
by
estebank
3y ago
> It will constantly suggest explicit lifetimes and other magic when in reality you probably want `Box<Rc<..>>`. If you can provide examples of cases like these, please file a ticket in the issue tracker. Some suggestions hav
804.
▲
by
estebank
3y ago
You would report it on our issue tracker. Here is an example of what that would look like: https://github.com/rust-lang/rust/issues/114324 Even if you can't reproduce it, the backtrace can be enough to f
805.
▲
by
estebank
3y ago
For crash reports the only elements included are coming from the compiler (the symbols of the stack trace do not leak user data), but the panic description can leak symbols from the user's code. For automated mechanisms you could make
806.
▲
by
estebank
3y ago
That resource tells us what the code people use looks like, but it doesn't tell us how rustc behaves with it. Crater lets us tell if we've introduced a regression on features people use, but it doesn't tell us for example tha
807.
▲
by
estebank
3y ago
> This is not telemetry, it is just additional local logging. I agree. > I don’t understand why it’s being framed as telemetry. Just say rustc is (optionally) logging more by default and the compiler people are writing tools that can
808.
▲
by
estebank
3y ago
The only mandatory fields in that form are the rustc version (that's printed as part of the error) and the backtrace. The file being generated includes both of those things. > Asking to clarify; I think you might be suggesting to re
809.
▲
by
estebank
3y ago
> The foundation controls Rust in the same way Oracle controls Java. That is not quite correct. The Rust Foundation is an entity that manages the trademark, relationships with other legal entities, and handles money to pay for running co
810.
▲
by
estebank
3y ago
I do want to make this as easy as possible. As part of that effort I am experimenting[1] with making filing an ICE report be as easy as "open ticket and attach this file". We do require a GitHub login because that is where we keep
More ›