Re: [gtk-list] Re: Thirdparty widgets and Guile



[Discussion continues on the gtk-list]

Kenneth Albanowski <kjahds@kjahds.com> writes:

> On 1 Nov 1997, Marius Vollmer wrote:
> 
> > The format of the defs file is not yet documented, but will be some
> > day.
> 
> This is fine, and I intend to support this sort of thing in Perl.
> 
> However, some of the dynamic stuff may not be feasible to support,
> generally, unless the *.defs file encodes far more information, to allow
> an extension to be automatically generated. My module currently has to
> define structure (and union) manipulations by hand, and many function
> definitions could not be automated, especially those with multiple output
> values, and GList parameters. I fully expect that this will be resolved
> with time. 

Yes.

Rather than beefing up the gtk.defs format significantly, I'd prefer
simplifying the exported features of Gtk, tho.

About structures/union: I'd be happy with writing a bunch of
accessor/mutator/creator functions in C and describing them in
gtk.defs than implementing sophisticated structure/union handling in
gtk.defs.  That is a very natural thing to do for Scheme, but I don't
know about Perl.

Multiple return values are needed.  Would it suffice to extent the
single return value specification of define-func to multiple ones; or
do we need full-blown in/inout/out modes?

GList? No idea about that...

> A more subtle problem is the namespace issue. Currently my Perl module is
> called "Gtk", with the Gdk binding being subsidiary "Gtk::Gdk", to prevent
> namespace pollution. Will each third-party gtk widget library have a name
> that meets Perl namespace requirements? (Unique to 8 letters, not
> case-sensitive, can have sub-names) Perhaps there should be a registry.

Hmm, I suppose that these widgets will follow the same naming
conventions as Gtk itself.  This looks more like a general Perl<->C
binding problem to me, not one that is unique to widgets that are
distributed separately.



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