Move semantics

oh gods

Assigned to
4 years ago
8 months ago

~icefox 4 years ago

...actually a basic impl might not be too hard. If a non-Copy variable ends up on the right side of an assignment or function call, it gets marked as 'moved' and type checking keeps track of it.

Now I need some kind of effect system to track whether a type is Copy or not...

~icefox 8 months ago

#59 is surprisingly related, instead of making stuff Pin it might be interesting to make stuff explicitly Move instead. Would be interesting to also flip Copy and make it the default, and make "things that can't be Copy" be its own trait. There's some interesting discussion in the lobste.rs thread mentioned there, https://lobste.rs/s/6fjkeh/why_async_rust ; that bit is a feature that actually has a lot of interlocking parts. So changing one bit will result in changes to other bits.

Register here or Log in to comment, or comment via email.