From mboxrd@z Thu Jan 1 00:00:00 1970 X-Spam-Checker-Version: SpamAssassin 3.4.4 (2020-01-24) on polar.synack.me X-Spam-Level: X-Spam-Status: No, score=-1.9 required=5.0 tests=BAYES_00 autolearn=ham autolearn_force=no version=3.4.4 X-Google-Language: ENGLISH,ASCII-7-bit X-Google-Thread: 103376,29850945228df59 X-Google-Attributes: gid103376,public X-Google-ArrivalTime: 2003-06-17 08:54:26 PST Path: archiver1.google.com!news1.google.com!sn-xit-02!sn-xit-06!sn-xit-09!supernews.com!216.170.153.135.MISMATCH!tdsnet-transit!newspeer.tds.net!news.binc.net!kilgallen From: Kilgallen@SpamCop.net (Larry Kilgallen) Newsgroups: comp.lang.ada Subject: Re: Boehm-Demers-Weiser conservative garbage collector and GNAT Date: 17 Jun 2003 10:54:24 -0500 Organization: Berbee Information Networks Corporation Message-ID: <8nXPHPFBnkS2@eisner.encompasserve.org> References: <1316747.mXveBPtf0Z@linux1.krischik.com> In article , Ludovic Brenta writes: > Kilgallen@SpamCop.net (Larry Kilgallen) writes: > >> Ludovic Brenta writes: >> >> > Yes. I've never really liked GC myself, but the paper that Martin >> > mentions says that programmers spend up to 30% of their time doing >> > (and debugging) memory management, and that perhaps this 30% could be >> > better spent elsewhere. >> >> Does that paper say _Ada_ programmers spend that much time ? >> >> If so, then programmers for some other languages must spend 110% of their >> time debugging memory managment issues. > > The paper concentrates on C and C++. While I agree that Ada > programmers tend to do less dynamic memory allocation than C/C++ > people, large programs will usually have to do some. Think about > containers. I'd be interested to know what your personal experience > is. I'd expect you spend less than 30% of your time but more than 0% > doing memory management. Of course, if you only ever allocate on the > stack and never on the heap (explicitly, that is), then you have no > need for a garbage collector since you don't create any garbage :) The last major program I wrote was designed to minimize the amount of explicit memory allocation (using Ada83). There were one or two chains of records that had to be cleaned up in between major groups of user commands. There was a "lot" of stack-based memory used.