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,1f2b6675d1185b30 X-Google-Attributes: gid103376,public X-Google-ArrivalTime: 2002-06-21 08:46:46 PST Path: archiver1.google.com!news1.google.com!newsfeed.stanford.edu!news.tele.dk!small.news.tele.dk!130.240.42.8!luth.se!newsfeed1.uni2.dk!dax.net!juliett.dax.net!not-for-mail Newsgroups: comp.lang.ada Subject: Re: Garbage collector on Ada? References: <3D13471D.6020606@san.rr.com> From: Ole-Hjalmar Kristensen Message-ID: <7vptyk4ou1.fsf@vlinux.voxelvision.no> 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, 21 Jun 2002 15:46:15 GMT NNTP-Posting-Host: 193.216.12.150 X-Complaints-To: abuse@tele2.no X-Trace: juliett.dax.net 1024674375 193.216.12.150 (Fri, 21 Jun 2002 17:46:15 MET DST) NNTP-Posting-Date: Fri, 21 Jun 2002 17:46:15 MET DST Organization: Tele2 Norway AS Public Access Xref: archiver1.google.com comp.lang.ada:26565 Date: 2002-06-21T15:46:15+00:00 List-Id: Darren New writes: > Pedro Menendez wrote: > > someone told me that it would be quite impossible considering Ada is > > a real-time language, > > Well, unless you used a real-time garbage collector. It sounds like > "someone" isn't up on this decade's technology. > > Hmmm... Looks like "someone" isn't even up on how Google works. > > http://lieber.www.media.mit.edu/people/lieber/Lieberary/GC/Realtime/Realtime.html Baker's algorithm is old and well known and pretty good. But the problem with any copying garbage collector, including this new one, is that if you copy large objects, that *may* be enough to disturb your timing, unless you run the garbage collector in a separate thread, and thus allows the copying to be interrupted. Baker's original paper mentions this, and also explains why running the garbage collector in a separate thread is difficult. But I agree, GC is good for may applications, and with some care, can be used even for RT applications.