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-Thread: 103376,21960280f1d61e84 X-Google-Attributes: gid103376,public X-Google-Language: ENGLISH,ASCII-7-bit Path: g2news2.google.com!news4.google.com!border1.nntp.dca.giganews.com!nntp.giganews.com!nx01.iad01.newshosting.com!newshosting.com!newspeer.monmouth.com!newsfeed2.telusplanet.net!newsfeed.telus.net!edtnps90.POSTED!023a3d7c!not-for-mail Sender: blaak@METROID Newsgroups: comp.lang.ada Subject: Re: How come Ada isn't more popular? References: From: Ray Blaak Organization: The Transcend Message-ID: User-Agent: Gnus/5.09 (Gnus v5.9.0) Emacs/21.1 MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Date: Fri, 09 Feb 2007 19:52:07 GMT NNTP-Posting-Host: 208.66.252.228 X-Trace: edtnps90 1171050727 208.66.252.228 (Fri, 09 Feb 2007 12:52:07 MST) NNTP-Posting-Date: Fri, 09 Feb 2007 12:52:07 MST Xref: g2news2.google.com comp.lang.ada:9212 Date: 2007-02-09T19:52:07+00:00 List-Id: "Randy Brukardt" writes: > > At any rate, one uses the tools that fit their needs. If you find yourself > > in situations with stable data structures, then it sounds like you don't > > need GC, plain and simple, or maybe even any cleanup at all. > > Right, but then why should it be a required and central part of general > purpose programming languages. Surely, it should be available as an option > for types that need it, but it certainly should not apply to all types. GC should be a required and central part of general purpose language because it saves the programmer so much time and effort, and does a better job at memory cleanup, which means less bugs. A simple way out of the problem is to have a language that readily provides the options to do things either way. The religious argument then boils down to whether it should be on by default or not. Or even better, one can have a language where one has GC for heap based values, while still providing scope based constructs. > And locals and temporaries are on the stack - no action at all is required > to destroy them (you keep refering to this as "manual management", but there > is nothing manual about it -- the compiler does all of the work). I must clarify this. I fully understand how stack values work. I have used them in Ada and in C++ after all. What I refer to as manual management is for heap values, such that that for every "new" one must remember eventually to call "deallocate". When I refer to locals and memory management, I am talking about the allocation of linked data structures assigned to local *pointers* and the need to cleanup those pointers before returning. -- Cheers, The Rhythm is around me, The Rhythm has control. Ray Blaak The Rhythm is inside me, rAYblaaK@STRIPCAPStelus.net The Rhythm has my soul.