3 ms·
Basically unaliasing distinguishes the cases: * I have `iso^` because consumed the last reference to an `iso`, so this value can be sent anywhere or renamed *
by hntemppony 6y ago
Basically unaliasing distinguishes the cases:
* I have `iso^` because consumed the last reference to an `iso`, so this value can be sent anywhere or renamed
* I have `iso` because I've just evaluated a living reference to an `iso` object, so I can access fields and methods (with automatic receiver recovery) but can't move it anywhere
Unaliasing with `consume` is what produces `iso^`