FizzyOrange

joined 1 year ago
[–] FizzyOrange@programming.dev 3 points 3 weeks ago

Not the kinds of bugs he is talking about. This is about spectre mitigations.

[–] FizzyOrange@programming.dev 2 points 3 weeks ago (1 children)

The biggest issue is move constructors. Explanation here: https://cxx.rs/binding/cxxstring.html#restrictions

Probably seems like a little thing but I found it quite annoying in practice, and there are other things like not being able to combine serde-derive and cxx FFI on the same struct.

[–] FizzyOrange@programming.dev -2 points 3 weeks ago

Oof found the Java developer. No thanks.

[–] FizzyOrange@programming.dev 18 points 3 weeks ago (2 children)

The C++ standards committee don't see memory safety or UB as a problem. If they did they wouldn't keep introducing new footguns, e.g. forgetting return_void() in a coroutine. They still think everyone should just learn the entire C++ spec and not make mistakes.

[–] FizzyOrange@programming.dev 8 points 3 weeks ago (4 children)

Interop between Rust and C++ is pretty bad actually - I can understand wanting to avoid that.

However I still agree. I can't see opt-in mechanisms like this moving the needle.

[–] FizzyOrange@programming.dev 1 points 4 weeks ago

Yes I definitely am. It's really nice that crates.io is short, and it's silly to give that up for a miniscule risk of something moderately annoying happening.

Even if the domain goes away we'd just have to all move to a new domain. Annoying but hardly the end of the world. Cargo.io isn't actually hard-coded in many places. It's nothing like if github.com stopped existing.

[–] FizzyOrange@programming.dev 2 points 4 weeks ago

Oh wow I've been looking for something nice like that for ages. Python can do this and it's really great for silicon verification test stimulus. I've also done it in C++ using C++20 coroutines, but they are so complicated and low level I ended up having to use a library to help (libcoro). Felt like a bit of a gap in Rust, but this looks like a great solution!

[–] FizzyOrange@programming.dev 3 points 4 weeks ago (2 children)

There's zero chance they will get rid of .io.

[–] FizzyOrange@programming.dev 2 points 4 weeks ago

It's significantly less of a nightmare and Deno is downright pleasant.

[–] FizzyOrange@programming.dev 16 points 1 month ago (2 children)

The secret is just to do it anyway. I have yet to work in a job where anyone actively stopped me fixing technical debt, even if they never asked me to do it.

[–] FizzyOrange@programming.dev 5 points 1 month ago (2 children)

It's cloud based though... Not ideal. I get why they had to do that (they didn't want to expose people to the Python infra shit show) but it's still kind of a shame.

Would be better if they added Typescript support IMO.

[–] FizzyOrange@programming.dev 3 points 1 month ago (1 children)

You're still missing the point. We all understand that definition. We're just saying that it is incorrect use of the word "concurrent". Does that make sense? The word "concurrent" means things happening at the same time. It's stupid for programmers to redefine it to mean things not happening at the same time.

view more: ‹ prev next ›