this post was submitted on 08 Sep 2023
44 points (90.7% liked)
Rust
6128 readers
27 users here now
Welcome to the Rust community! This is a place to discuss about the Rust programming language.
Wormhole
Credits
- The icon is a modified version of the official rust logo (changing the colors to a gradient and black background)
founded 2 years ago
MODERATORS
you are viewing a single comment's thread
view the rest of the comments
view the rest of the comments
Or maybe you know
fn foo(&big, &chungus)
is out
async fn foo(big, chungus) -> (big, chungus)
is in
Or
is in
Moving (movable/sendable) data is not limited by number or direction, you know. And that second one even makes use of them great Hoare channels! And gives us control on how long we hold on to data before sending it back (modified or not). But I digress. Let's go back to the important talking point that Hoare was right!
I think the point of the "BIG_GLOBAL_STATIC..." name is that global statics are bad, not that the syntax is ugly. That said, you're absolutely correct that combining channels with async code is the way to go.
Yes. And my point was that there is an obvious way of sharing data besides passing static-refs, cloning, and using
Arc
s, which is moving data bidirectionally. That was conveniently, or ignorantly, glossed over by the coping gopher.