[columbus.pm] Meeting next thursday

Colin Walters levanti at verbum.org
Thu Mar 2 12:10:32 CST 2000


>>>>> "Jason" == J Alex <jalex+ at osu.edu> writes:

    Jason> Ah, I am kissing the hopes of a meeting place with a
    Jason> projector and stuff goodbye for now.  How about next
    Jason> thursday at a coffee shop.  We met at Caribou Cafe in
    Jason> granville the first time last year, I believe.

A coffee shop would be ok, but someone should at least bring a laptop
or something :)  I'm all for another meeting though.  Does anyone want
to do presentations?

    Jason> Also, can someone please complain about this group if you
    Jason> are unhappy with it?

I think we just need to be more organized.  

    Jason> One of the biggest needs in the perl community, from my
    Jason> point of view, is some good documentation and tutorials.
    Jason> So many of the non-oreilly books are crap, and outside of
    Jason> the awesome perldoc stuff, there isn't a ton of literature.
    Jason> Especially on perl/GTK.  Sure, you can program in it
    Jason> reasonably easy, but I haven't met many people who actually
    Jason> understand what the heck is going on when they use it.

Well, it's actually pretty simple:

Gtk.pm is a extremely thin wrapper over libgtk-1.2.so.  It uses
DynaLoader.pm, which works OS-specific dlopen() magic.  Basically,
what happens when you do

my $topwindow = new Gtk::Widget("GtkButton", foo, bar);

is Gtk.pm translates Gtk::Widget::new("GtkButton") into
gtk_widget_new("GtkButton", foo, bar).  Then DynaLoader.pm uses
dlsym() to extract the function address of gtk_widget_new from
libgtk-1.2.so, then it translates the perl strings and whatnot into
the equivalent C structures, then it calls gtk_widget_new with the
given arguments, and finally it packs the C return value into a perl
data structure, and returns it.

In summary, programming in Gtk/Perl is _exactly_ like programming in
Gtk/C.  You just get automatic translation of function arguments in
between C and perl data structures.

-- 
Colin Walters <levanti at verbum.org>
http://web.verbum.org/levanti
(1024D/C207843A) A580 5AA1 0887 2032 7EFB  19F4 9776 6282 C207 843A
-----------------------------------------------------------------------
To send mail to the Columbus.pm list send email to
columbus-pm-list at happyfunball.pm.org

To unsubscribe send an email to majordomo at hfb.pm.org  with
unsubscribe columbus-pm-list youremail at yourdomain.com
-----------------------------------------------------------------------



More information about the Columbus-pm mailing list