Path: utzoo!utgpu!news-server.csri.toronto.edu!clyde.concordia.ca!mcgill-vision!snorkelwacker!bloom-beacon!eru!hagbard!sunic!news.funet.fi!tukki.jyu.fi!sakkinen From: sakkinen@tukki.jyu.fi (Markku Sakkinen) Newsgroups: comp.object Subject: Re: What is Objective C? Message-ID: <1990Sep12.074154.657@tukki.jyu.fi> Date: 12 Sep 90 07:41:54 GMT References: <3864@bingvaxu.cc.binghamton.edu> <77500056@m.cs.uiuc.edu> Reply-To: sakkinen@jytko.jyu.fi (Markku Sakkinen) Organization: University of Jyvaskyla, Finland Lines: 29 In article pcg@cs.aber.ac.uk (Piercarlo Grandi) writes: >On 4 Sep 90 22:36:00 GMT, johnson@m.cs.uiuc.edu said: > ... >johnson> Although I agreed with most of what Paul Chisholm said, I >johnson> disagree with this statement. My experience with C++ is that >johnson> memory management takes a lot of CPU time. We use reference >johnson> counting, and have to lock objects before changing their >johnson> reference count (we are using a multiprocessor). > >For example, this is *not* necessary in many cases. Since you *must* >eventually invoke a garbage collector to reclaim cycles, you can just >accept imprecise reference counting, that is counting that misses some >count decrements. Or you can use reference count logs, etc... Perhaps you didn't notice that Prof. Johnson wrote specifically about C++. Because of pointer arithmetic, it is not *possible* to use garbage collection safely with C++ (or any C-based language). (I have read Boehm's article in Software - Practice and Experience, but the reason for his success seemed to be that those large pieces of existing C software that he experienced with were amazingly constrained and well-behaving in their use of pointers.) Markku Sakkinen Department of Computer Science and Information Systems University of Jyvaskyla (a's with umlauts) Seminaarinkatu 15 SF-40100 Jyvaskyla (umlauts again) Finland SAKKINEN@FINJYU.bitnet (alternative network address)