unofficial mirror of guile-devel@gnu.org 
 help / color / mirror / Atom feed
From: David Pirotte <david@altosw.be>
To: Andy Wingo <wingo@pobox.com>
Cc: guile-devel <guile-devel@gnu.org>
Subject: Re: goops - guile-clutter unexpected bug while using #:virtual slot allocation for a <clutter-actor> subclass
Date: Sat, 7 Feb 2015 15:13:51 -0200	[thread overview]
Message-ID: <20150207151351.57b98221@capac> (raw)
In-Reply-To: <87oap57mwi.fsf@pobox.com>

[-- Attachment #1: Type: text/plain, Size: 3067 bytes --]

> Hello again :)

Yes, hello,
Saturday greetings!

> ... So let us not argue over that.  Let us instead treat your concern as request
> that the behavior should be different.

Perfect, let's talk about ... should we, how, how much :) ...
 
> > we should follow the clos spec here

> That said I think the CLOS way is usually better

Agreed, definitely:  I'm well aware that it is a very complex task to implement it
correctly [and fully, but I don't need the full protocol either, 1 day maybe...], and
very 'frustrating' too, since it is almost impossible to make it run 'fast', by
definition, as you know. of course ... But I really need the subset we have in goops
to implement the corresponding clos subset protocol, especially what we are talking
about.

> but we are limited by  two things: compatibility with past behavior (not a
> terrible concern in this instance, given the lack of outcry when I broke things),
> and secondly by hack-power.  In particular I do not have any additional free
> time to spend on GOOPS features in the near future.

Would you have some available pay time? If so, could you send me a private quote, I
need this change asap, and if the quote is reasonable, you could start immediately.
If you [guilers] think it should also be in goops, fine, I am happy to 'fund
that part of the protocol for all' :)  If not, could you include in the quote a
bit of time to implement a git branch with goops only, name it gclos or what ever
is [more] appropriate , if that is possible [?], so that I can always and in a very
easy way, track stable-2 [master in the near future] but apply 'my' goops [I
mjean (re)configure/make/make install 'my' goops...


> This feature you are asking for requires:
> 
>   * more logic in method-applicable? for accessor methods that would
>     1. check the list of effective slot definitions in the target object
>     2. for each slot, get the direct slot definition
>        - currently there is no long from effective to direct, we'd have
>          to add that
>     3. if the target object has a slot with the same direct slot
>        definition as the one associated with the accessor method, then
>        the method applies, otherwise not
> 
>   * compile-time specialization for methods, as in
>     583a23bf104c84d9617222856e188f3f3af4934d which was later reverted
> 
> Open questions would be, do we expose method-applicable? as a generic,
> there's some gnarly circularity because these methods are part of the
> method dispatch protocol, do we expose more of the slot protocol to
> users (it's currently somewhat opaque and unfinished), how to document
> all of this, we need a bunch of tests too, how do you relate effective
> slots to direct slots in the CLOS case where you can make composite
> slots, etc.

I will answer this part a bit latter, I need to think about it :)

> It's a bit of work and I need to do other things :)

Sure,
I have too, 
Let's see if you are interested and has pay time available...

Cheers,
David

[-- Attachment #2: OpenPGP digital signature --]
[-- Type: application/pgp-signature, Size: 473 bytes --]

  reply	other threads:[~2015-02-07 17:13 UTC|newest]

Thread overview: 22+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2014-12-19 19:46 goops - guile-clutter unexpected bug while using #:virtual slot allocation for a <clutter-actor> subclass David Pirotte
2014-12-19 23:42 ` Panicz Maciej Godek
2014-12-20  6:16   ` David Pirotte
2015-01-26 21:35 ` Andy Wingo
2015-01-27  1:00   ` David Pirotte
2015-01-27  8:29     ` Andy Wingo
2015-01-27 19:11       ` David Pirotte
2015-01-27 19:35         ` David Pirotte
2015-01-27 20:44         ` Andy Wingo
2015-01-28  3:05           ` David Pirotte
2015-01-28  3:36             ` David Pirotte
2015-01-28 12:57             ` Andy Wingo
2015-01-28 19:24               ` David Pirotte
2015-01-30 13:50           ` David Pirotte
2015-02-06 13:33             ` Andy Wingo
2015-02-06 17:09               ` David Pirotte
2015-02-06 17:49                 ` Andy Wingo
2015-02-07  0:06                   ` David Pirotte
2015-02-07 15:37                     ` Andy Wingo
2015-02-07 17:13                       ` David Pirotte [this message]
2015-02-07 16:08                     ` David Pirotte
2015-02-04 16:12           ` David Pirotte

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

  List information: https://www.gnu.org/software/guile/

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20150207151351.57b98221@capac \
    --to=david@altosw.be \
    --cc=guile-devel@gnu.org \
    --cc=wingo@pobox.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).