Re: PATCH: DPMS extension support

Christophe Rhodes <[email protected]> Wed, 13 Jul 2005 11:12:34 +0100
Newsgroups gmane.lisp.clx.devel
Message-ID <[email protected]>
Matthew Kennedy <[email protected]> writes:

> The attached Darcs patch implements the DPMS (display power
> management signaling) extension for CLX.  It follows the
> specification and naming conventions described in DPMS.txt which is
> distributed with Xorg and XFree86.

This looks great.  Thanks!

> +(defpackage :dpms
> +  (:use :common-lisp)
> +  (:import-from :xlib
> +                "DEFINE-EXTENSION"
                   ...)
> +  (:export "DPMS-GET-VERSION" ...))

This list is, to my knowledge, the only place where clx development is
currently happening.  (If anyone lurking on this list knows of another
place, please say so!).

Given this, we should perhaps stop and think about how to manage these
extensions.  Some of the extensions currently in the telent tree
(SHAPE, RENDER, XFree86-XVIDMODE) modify and extend the XLIB package;
the GLX extension and this DPMS one have new packages.

It seems reasonably clear to me that having each extension in its own
package would lead to less long-term friction, but maybe I'm missing
something.  In addition, I think that the package itself can be used
to satisfy naming requirements: rather than dpms:dpms-get-version, one
could simply use dpms:get-version as the API.

In any case, I think it would be wise for those with a stake in the
future of CLX to make their thoughts known so that development now
doesn't cause too much friction in the future.  My proposal, for what
it's worth, would be that the ideal is

* The XLIB package is a static package, containing no extensions to
  the protocol[0];

* each extension lives in a package of its own named by the extension
  name[1] -- this is potentially problematic, because of the globality
  of package names; as we get more implementations of extensions, so
  does our encroachment on the global namespace.  Maybe the package
  should be prefixed by "XEXT." or somesuch?

* development continues apace (I'd love BIG-REQUEST and XKEYBOARD
  extension implementations :-).

Any opinions?

Cheers,

Christophe

[0] telent clx would provide deprecated exports from the XLIB package
for the external APIs of the extensions formerly contained within it.

[1] this may cause a bit of friction with the |XFree86-VIDMODE|
extension...

_______________________________________________
Portable-clx mailing list
[email protected]
http://lists.metacircles.com/cgi-bin/mailman/listinfo/portable-clx
cvs -d :ext:cvs.telent.net:/usr/local/src/cvs co clx  # over ssh
cvs -d :pserver:[email protected]:/cvs co clx  # anonymous