unofficial mirror of emacs-devel@gnu.org 
 help / color / mirror / code / Atom feed
From: Jan Moringen <jan.moringen@uni-bielefeld.de>
To: Michael Albinus <michael.albinus@gmx.de>
Cc: "emacs-devel@gnu.org" <emacs-devel@gnu.org>
Subject: Re: Inclusion of dbus-proxy
Date: Tue, 24 Aug 2010 04:03:43 +0200	[thread overview]
Message-ID: <24582_1282615424_ZZh072a3C5uYJ.00_1282615423.16505.92.camel@steed.robot-madness> (raw)
In-Reply-To: <nqtymlxrjt.fsf@alcatel-lucent.com>

Hi Michael,

thanks for the extensive feedback.

> >> For people not familiar with eieio (like me) it would be helpful to
> >> explain what's happening here.
> >
> > When called for the first time on a particular D-Bus object,
> > [...]
> > the function call syntax for EIEIO methods does not differ from ordinary
> > function calls.
> 
> That's more or less how I did understand it. What I recommend is a
> description for the user, which does not use eieio terminology. It could
> be a barrier for people not familiar with eieio.

I committed the following updated explanation which makes fewer
references to EIEIO:

;; When called for the first time on a particular D-Bus object,
;; `dbus-proxy-make-remote-proxy' looks up the set of interfaces
;; implemented by the object and dynamically creates Emacs Lisp code
;; that mimics the D-Bus interfaces. This code mainly consists of
;; functions which correspond to the D-Bus interface methods, but
;; information about D-Bus properties and signals is also stored.
;; When called, the generated functions augment their arguments with
;; D-Bus type information and call their corresponding D-Bus methods.
;; When these proxy components are created, names are transformed from
;; D-Bus-typical CamelCamel to something-more-lispy. The generated
;; functions and object slots can be used like ordinary Emacs Lisp
;; functions and object slots.

> >> > + dbus-introspection.el
> >> 
> >> If such a module exists, dbus-introspection-* functions from dbus.el
> >> could be moved here.
> >
> > Currently this file contains some accessor functions for D-Bus
> > introspection data and some signature parsing code. I'm not sure how
> > this would fit together with dbus.el but I do think these should be
> > merged. In particular dbus-introspection.el does not depend on
> > dbus-proxy.el.
> 
> Maybe there is a misunderstanding. If dbus-introspection.el would be a
> part of core Emacs, I recommend to move existing dbus-introspection-*
> functions *from* dbus.el *to* dbus-introspection.el.

Ah, OK. Well, this has to be done later in case dbus-proxy is included
in Emacs, I guess

> If dbus-introspection.el will be offered via ELPA, this is not useful.

Yes.

> > It serves the purpose of letting a person reading the code know that he
> > or she is looking at the "definition" of the condition. I though, if I
> > just put properties on a symbol one might wonder whether the symbol also
> > serves some other purpose. Technically it is totally unnecessary, I
> > guess. Should the call to `intern' be removed then?
> 
> I would say yes.

Done.

> >> Furthermore, since we are in dbus-introspection.el, the functions shall
> >> not be prefixed dbus-proxy-*
> >
> > OK. I wasn't sure, where these functions should be placed. Maybe they
> > could be in dbus.el and then be called dbus-parse-*?
> 
> Maybe. Or they are kept in dbus-introspection.el, and are called
> dbus-introspection-*.

Done.

I think, I addressed all suggestions which do not depend on changes in
Emacs itself. The code is available at
https://code.launchpad.net/~scymtym/+junk/dbus-proxy

Kind regards,
Jan




  reply	other threads:[~2010-08-24  2:03 UTC|newest]

Thread overview: 12+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2010-08-21 22:03 Inclusion of dbus-proxy Jan Moringen
2010-08-22 14:47 ` joakim
2010-08-22 16:20 ` Michael Albinus
2010-08-22 21:04   ` Jan Moringen
2010-08-23 13:23     ` Kevin Rodgers
2010-08-23 15:44     ` Michael Albinus
2010-08-24  2:03       ` Jan Moringen [this message]
2010-08-24 19:50         ` Michael Albinus
2010-08-24 21:32           ` Chong Yidong
2010-08-24 23:59             ` Tom Tromey
2010-08-26 10:09             ` Michael Albinus
2010-08-25  3:24           ` Jan Moringen

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/emacs/

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

  git send-email \
    --in-reply-to=24582_1282615424_ZZh072a3C5uYJ.00_1282615423.16505.92.camel@steed.robot-madness \
    --to=jan.moringen@uni-bielefeld.de \
    --cc=emacs-devel@gnu.org \
    --cc=michael.albinus@gmx.de \
    /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.
Code repositories for project(s) associated with this public inbox

	https://git.savannah.gnu.org/cgit/emacs.git

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).