[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: Guile + Boehm GC: First Remarks
From: |
Ludovic Courtès |
Subject: |
Re: Guile + Boehm GC: First Remarks |
Date: |
Thu, 01 Jun 2006 09:55:58 +0200 |
User-agent: |
Gnus/5.110004 (No Gnus v0.4) Emacs/21.4 (gnu/linux) |
Hi,
Neil Jerram <address@hidden> writes:
> Fascinating! Assuming we can resolve the details you have listed,
> what are the other high-level pros/cons, apart from performance? Does
> this mean we would discard all Guile's own GC code? Also, is Boehm GC
> as sophisticated as the generational GC ideas that people have talked
> over the last year about adding Guile, or can we expect future Boehm
> GC development to cover this?
As Han-Wen said, BGC is generational. More details are available from:
http://www.hpl.hp.com/personal/Hans_Boehm/gc/gcdescr.html
For Guile, the main advantage is maintainability: using BGC
significantly reduces code complexity (i.e., it removes the
hardest-to-read parts of the code, it disentangles GC code from
functional code), it may improve portability, and it has the potential
to improve performance --- although that potential hasn't shown up yet.
;-)
>From a technical viewpoint, it is much, much easier to use, and avoids
many common programming errors: unless otherwise specified, every
register and every piece of memory is scanned for pointers, not only the
heap (however, only heap regions allocated via the GC allocation
routines are scanned). Also, it periodically clears the unused part of
the stack, which may help avoid certain leaks (as the eval-stack leak
described in [0]).
Thanks,
Ludovic.
[0] http://lists.gnu.org/archive/html/guile-devel/2005-11/msg00047.html