3 ms·
It's not just HN. It's also differentiated that way in the official Apple documentation. I previously commented on it: https://news.ycombinator.com/item?id=7
by jasode 10y ago
It's not just HN. It's also differentiated that way in the official Apple documentation. I previously commented on it:
https://news.ycombinator.com/item?id=7866732 https://news.ycombinator.com/item?id=7866732
The "rc != gc" ship has already sailed. I realize that it can be annoying to language purists but the way to make peace with it is to separate discussions into 2 types of contexts:
1) formal computer science discussion (such as Lambda The Ultimate) --> "rc == gc"
2) real-world discussions in Apple documentation and various other forums --> "rc != gc"
I'm not prescribing that you must like the situation but merely pointing out that's how it is these days. Repeatedly making corrections in the hopes that #1 overtakes #2 is not going to sway common usage. Even rigid and exacting computer scientists use words and concepts[1] that mathematicians frown on. In the end, the common usage (that often strays from original precision) prevails.
[1]e.g. "integer" as -32k to +32k instead of -inf to +inf, and "=" as "assignment" instead of "equality"
- chrismonsanto 10y agoAlternatively, I'll continue to speak up for the established terminology in the GC literature, and continue to recommend that those interested in this subject read sources like Jones' GC Handbook rather than the "official" Apple documentation. People who are actively hostile against using the established terminology are unlikely to have the expertise necessary to contribute productively to these kinds of discussions anyway.
- jasode 10y ago>read sources like Jones' GC Handbook rather than the "official" Apple documentation. I want to emphasize again that it's a language communication issue and not a technical issue and therefore, reading Jones' GC Handbook will not help nor solve the problem. One can thoroughly study that book, and 100% agree with the terminology that "rc is subset of gc", and in the end, still chooses to use the informal "rc != gc" -- because everyone else has been using it that way for a long time. Also, by mentioning Apple, I may have given the impression that it's specifically "Apple" vs the "correct computer science" proponents. Or, I'm saying Apple is some sort of authority or blessing on loose terminology. No, the informal "rc vs gc" nomenclature has been used for over 30 years which is long before Apple did the GC/ARC flip flop in 2011. It is also before the Jones GC book published in 1996. Examples: 1989: https://groups.google.com/forum/#!search/reference$20counting$20vs$20gc/comp.lang.c++/4axzDwbMxu4/3fq5DuDxC5kJ https://groups.google.com/forum/#!search/reference$20countin... 1994: https://groups.google.com/forum/#!msg/comp.object/fqPmh_1wmlI/wmA8tkbfKl0J https://groups.google.com/forum/#!msg/comp.object/fqPmh_1wml... 2002: https://books.google.com/books?id=mGlI6kt6qzYC&pg=PA76&lpg=PA76&dq=%22reference+counting+vs+garbage+collection%22&source=bl&ots=pyk1aYQiDa&sig=kImApacb7Ag66xszMgxQnMmuJ3A&hl=en&sa=X&ved=0ahUKEwith5zIo_PMAhWEy4MKHc8fAukQ6AEIMzAE#v=onepage&q=%22reference%20counting%20vs%20garbage%20collection%22&f=false https://books.google.com/books?id=mGlI6kt6qzYC&pg=PA76&lpg=P... In other words, the "rc != gc" ship sailed a long time before Apple's documentation and the cited links show how pervasive its usage was across several programming languages. Ideally, "RC" would have been "RCGC" Ref Counting Garbage Collector, and "GC" would have been "TGC" Tracing Garbage Collector so all subsequent conversations were "RCGC vs TGC" but that's not how history played out. Studying Jones' GC Handbook does not reverse 30+ years of how people informally use terminology.