From ... Path: archiver1.google.com!news1.google.com!newsfeed.stanford.edu!newsfeeds.belnet.be!news.belnet.be!news2.kpn.net!news.kpn.net!nslave.kpnqwest.net!nloc.kpnqwest.net!nmaster.kpnqwest.net!nreader2.kpnqwest.net.POSTED!not-for-mail Newsgroups: comp.lang.lisp Subject: Re: self-hosting gc References: <87elj5i2rf.fsf@becket.becket.net> <87elj5glx5.fsf@becket.becket.net> Mail-Copies-To: never From: Erik Naggum Message-ID: <3223987471212925@naggum.net> Organization: Naggum Software, Oslo, Norway Lines: 21 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, 01 Mar 2002 16:04:26 GMT X-Complaints-To: newsmaster@KPNQwest.no X-Trace: nreader2.kpnqwest.net 1014998666 193.71.199.50 (Fri, 01 Mar 2002 17:04:26 MET) NNTP-Posting-Date: Fri, 01 Mar 2002 17:04:26 MET Xref: archiver1.google.com comp.lang.lisp:27648 [ Not responding to comp.lang.scheme. ] * tmoore@sea-tmoore-l.dotcast.com (Tim Moore) | I suppose that access to macros might be a bonus when writing a collector | in Lisp, but assuming that much Lisp functionality won't be available in | the collector or will be available in some weird and crippled form, and | that it's desirable for the collector not to cons itself, the Lisp you | write for the collector ends up looking a lot like C. Why is this? It seem obviously false to me. The first thing you would do in a copying garbage collector would be to switch the active half of the two-space memory organization. The GC's task is only to move live objects from the other half to this half, right? It should be doable with the full language available and with no real constraints on consing. Even reorganizing old space in a generational garbage collector should be doable while consing from the fresh memory arena. /// 2002-03-01 -- In a fight against something, the fight has value, victory has none. In a fight for something, the fight is a loss, victory merely relief.