guile-user
[Top][All Lists]
Advanced

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

Re: New g-wrap supported in guile-gtk--rotty-0.1!


From: Andreas Rottmann
Subject: Re: New g-wrap supported in guile-gtk--rotty-0.1!
Date: Thu, 04 Dec 2003 23:33:19 +0100
User-agent: Gnus/5.1002 (Gnus v5.10.2) Emacs/21.3 (gnu/linux)

Mikael Djurfeldt <address@hidden> writes:

>> Yes, I also think that we *have* to get the "time-to-initial-window"
>> at least under 1 second for a hello world program...
>
> GOOPS is, as yet, only optimized for fast execution.  Creation of
> objects and *especially* method creation involves a lot of work, most
> of which is done by interpreted Scheme code.
>
> This is not an architectural problem, though, and it is certainly
> possible to speed things up.
>
> An improvement of method addition on the algorithm level that could
> help this particular case would be to allow for adding multiple
> methods at once.  Presently, every call to scm_add_method involves
> re-computing the methods list of the GF which means that adding N
> methods to a GF is O(N^2).
>
Unfortunatly, I guess this will not help much. First, most generics in
the binding have only one method. Second, I'm not exactly sure how to
get complexity down: compute-new-methods currently checks each of
current methods against a duplicate specialization. However, it may be
save to assume that all methods passed to internal-add-methods! have
different specializers, so I could at least add them if there are not
any methods yet.

> An improvement on the implementation level would be to do part (or
> all) of the work in C.  This, however, should be done with preserved
> respect for the MOP.  Anyone who wants to do this should talk to me
> first.
>
Hmm, this would probably mean pulling internal-add-methods! and (part
of) the functions it calls down to the C level. What exactly do I
have to consider wrt MOP here?

Andy
-- 
Andreas Rottmann         | address@hidden      | address@hidden | address@hidden
http://www.8ung.at/rotty | GnuPG Key: http://www.8ung.at/rotty/gpg.asc
Fingerprint              | DFB4 4EB4 78A4 5EEE 6219  F228 F92F CFC5 01FD 5B62

Any technology not indistinguishable from magic is insufficiently advanced.
   -- Terry Pratchett




reply via email to

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