This is the mail archive of the guile@cygnus.com mailing list for the guile project.
| Index Nav: | [Date Index] [Subject Index] [Author Index] [Thread Index] | |
|---|---|---|
| Message Nav: | [Date Prev] [Date Next] | [Thread Prev] [Thread Next] |
Marius Vollmer <mvo@zagadka.ping.de> writes:
> Greg Harvey <Greg.Harvey@thezone.net> writes:
>
> > [guardians]
> > It's quite a schemy notion, really, being somewhat abstract and
> > allowing you to implement all sorts of funky data structures.
>
> Yes, looks like a implemented something like a guardian but without
> letting Scheme take control. I think the main feature of a guardian
> is that it allows Scheme code (which normally can't be run during GC)
> to cooperate with the GC.
>
> > There is a paper out there somewhere, but I can't remember where I
> > got it (probably at www.schemers.org)
>
> Yep, I think I read that when it was first mentioned on the list, but
> I would have to page the details back in.
>
Oops, the paper is actually at the scheme repository
ftp://ftp.cs.indiana.edu/pub/scheme-repository/doc/pubs/guardians.ps.gz
Since guile-gtk was the topic, there's a little problem compiling with
gtk-1.0.6 (yeah, I know, but after a few years trying to keep a
mongrel slackware system together, I'm mostly sticking with `official'
redhat rpms... if I were to enumerate the number of ways I'd like to
spend my time, sysadmin comes just before violent beating with a
frozen tuna). It only requires a one-line diff, so maybe you could put
a patch into the distribution (and a big 'yer on yer own' warning :)
*** guile-gtk.c~ Sat Jan 16 22:13:51 1999
--- guile-gtk.c Thu Jan 21 03:28:09 1999
***************
*** 1996,2002 ****
info.class_size = parent_info.class_size;
info.class_init_func = NULL;
info.object_init_func = NULL;
! info.base_class_init_func = NULL;
return gtk_type_unique (parent_type, &info);
}
--- 1996,2002 ----
info.class_size = parent_info.class_size;
info.class_init_func = NULL;
info.object_init_func = NULL;
! info.class_init_func = NULL;
return gtk_type_unique (parent_type, &info);
}
--
Greg