guile-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: Mark procedures and LilyPond


From: Ludovic Courtès
Subject: Re: Mark procedures and LilyPond
Date: Fri, 06 Nov 2015 14:50:00 +0100
User-agent: Gnus/5.13 (Gnus v5.13) Emacs/24.5 (gnu/linux)

Mark H Weaver <address@hidden> skribis:

> Unfortunately, I doubt this will be sufficient for LilyPond.  The small
> example case in <http://bugs.gnu.org/19883>, which is apparently
> representative of how things are typically done in LilyPond, has
> structures like this:
>
>                    __________                    __________
>   Objects in      |          |                  |          |
>   GC-managed      |  SMOB 1  |                  |  SMOB 2  |
>      heap         |__________|                  |__________|
>                      |   ^                         |   ^
> .....................|...|.........................|...|..........
>                    __v___|___      _________     __v___|___
>   Objects in      |          |    |   STL   |   |          |
>   normal heap     |C++ object|--->|container|-->|C++ object|
>   (not scanned    |__________|    |_________|   |__________|
>      by GC)

Thanks for the picture, that’s very helpful!

I still think we should be able to get rid of GC mark procedures in this
case, sidestepping the bug you describe.

This pattern is very common when writing bindings.  I can’t imagine that
there's something insurmountable here.  Am I missing something?

Ludo’.



reply via email to

[Prev in Thread] Current Thread [Next in Thread]