Reporting system and potentially Python

John Ralls jralls at ceridwen.us
Wed Nov 16 00:40:43 EST 2011


On Nov 15, 2011, at 9:16 PM, Derek Atkins wrote:

> Hi,
> 
> On Tue, November 15, 2011 11:17 pm, John Ralls wrote:
>> 
>> On Nov 15, 2011, at 7:24 PM, Derek Atkins wrote:
>> 
>>> Hi,
>>> 
>>> This depends on your definition of 'wrapped.'  In general, C structures
>>> are mapped to Scheme as opaque pointer objects, which requires using
>>> getters/setters from guile to manipulate the object.  For example, you
>>> can't just do Account->desc in scheme, you need to use
>>> (xaccAccountGetDescription acc).
>> 
>> Has anyone ever tried using the gnome 2 Guile bindings and whatever is the
>> g_object_get mechanism from Guile?
> 
> Probably not, because I don't think it existed in a sufficient maturity
> the last time we did a scheme generator migration (g-wrap -> swig).  What
> is the current maturity of these bindings?  How supported are they?  Are
> they being actively developed and maintained?  What does it buy us that we
> don't already have?

It's different from gwrap or swig (that would be gobject-introspection, which doesn't appear to be well supported,
unfortunately). Rather, it is a guile "library" like slib or ice-9 that permits calling GObject functions without explicitly
wrapping subclasses. It would let us simplify the API by e.g., not having to export explicit getters/setters, directly using
GObject memory management, and so on.

(FWIW, Python integration with both GObject and GObject-Introspection is both extensive and very actively developed. Were we starting now we'd have to be nuts to pick Guile over Python.) 

Regards,
John Ralls


More information about the gnucash-devel mailing list