Hacker Newsnew | past | comments | ask | show | jobs | submitlogin

> There’s also the middle ground of Swift’s memory management which uses compiler-elided refcounting - i.e. the compiler detects when a count goes up then down again and removes those operations.

In the face of threading that's not a safe optimisation; if another thread decrements the refcount inbetween those two removed operations, boom. The compiler will have to track every variable that crosses threads or something.

EDIT: spelling



Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: