News for hackers. Stuff that matters.
Re:My experience rewriting Enjarify in Rust by stcredzero on Monday September 19, 2016 @08:51PM (#12536080)
Swift isn't garbage collected. ARC is not GC. It's actually a form of manual memory management, with lots of help from the compiler. The way you structure your program does give particular objects a particular lifetime.

https://news.ycombinator.com/item?id=7813598

Re:My experience rewriting Enjarify in Rust by pcwalton on Monday September 19, 2016 @09:03PM (#12536146)
Reference counting is a form of garbage collection [1] [2], as I've explained numerous times before. It has been considered a form of GC since the original papers in the 1960s and I see no reason to revisit that definition now.

To track the lifetimes of objects, Swift programs perform operations (reference count manipulation) at runtime. That's because the Swift compiler does not know the static lifetimes of objects, unlike Rust. It can optimize away some reference count traffic, but this doesn't change the basic system: semantically, all objects are reference counted.

[1]: https://en.m.wikipedia.org/wiki/Reference_counting

[2]: http://www.memorymanagement.org/glossary/a.html#term-automat...