[Pythonmac-SIG] package structure for OSA interfaces

Jack Jansen jack@oratrix.com
Tue, 22 Jan 2002 12:38:33 +0100


On Tuesday, January 22, 2002, at 12:22 , Michael J. Barber wrote:
> There is a surprisingly simple solution, but unfortunately only for 
> Python 2.2+. Define the required events in StdSuites.Required_Suite, 
> remove the required events from StdSuites.Standard_Suite, and make 
> StdSuites.Standard_Suite a subclass of StdSuites.Required_Suite. 
> Everything else stays as it is. With the new "diamond rule" for 
> multiple inheritance, that takes care of everything.
>
This sounds like a great idea!

I think we can do one better, even: define these events in a magic, 
handwritten suite (StdSuites._builtin_Suite comes to mind) and use this 
as the base class for both StdSuites.Standard_Suite and 
StdSuites.Required_Suite. These latter two are then still generated, and 
there's a one-line bit of magic in gensuitemodules that recognizes we're 
reading an AETE (not AEUT) for standard or required and inserts the 
magic baseclass.

Would this do the trick?

> The question remains: is there a fix for Python 2.1 and earlier? I 
> don't see one.

It doesn't really interest me all that much. I don't think there are 
good reasons not to switch from 2.1 to 2.2, which is if anything more 
compatible with older machines.
--
- Jack Jansen        <Jack.Jansen@oratrix.com>        
http://www.cwi.nl/~jack -
- If I can't dance I don't want to be part of your revolution -- Emma 
Goldman -