i started using _move(_:)
and that’s exactly what ended up happening. once you write _move(_:)
once in a function, it’s hard to argue why one variable should get _move
d and not another. i often find myself _move
ing everything that’s backed by a heap allocation.
a side effect of knowing that _move
exists is, psychologically, you start to assume that everything that isn’t explicitly _move
d is copyable. this ends up being a real (and not imaginary) problem because of the lack of memory profiling tools for swift on linux.