Remix.run Logo
steveklabnik 15 hours ago

We do have some information: https://youtu.be/Y6SSTRr2mFU?t=361 (linked with the specific timestamp)

In short, the previous two attempts were done by completely different groups of different people, a few years apart. Your direct question about if direct wisdom from these two attempts was shared, either between them, or used by Stylo, isn't specifically discussed though.

> a C++ implementation could be faster because it has better shared data concepts

What concepts are those?

bluGill 14 hours ago | parent [-]

> What concepts are those?

Data can be modified by any thread that wants to. It is up to you to ensure that modifications work correctly without race conditions. In rust you can't do this (unsafe aside), the borrow checker enforces data access patterns that can't be proved correct.

Again let me be clear: the things rust doesn't allow are hard to get correct.

steveklabnik 14 hours ago | parent [-]

I mean, data races are undefined behavior in C++ the same way that they are in unsafe Rust. The languages are equivalent there.

bluGill 14 hours ago | parent [-]

Only if there is a data race - if there is no data race C++ lets you do it. Rust doesn't let you do things that don't have a race but cannot be proven within the context of rust to not have a data race.

steveklabnik 14 hours ago | parent [-]

In safe Rust, yes, you must prove it. But in unsafe Rust, it's up to you. It's the exact same thing.