[Pythonmac-SIG] Re: improving appscript architecture

Jack Jansen Jack.Jansen at cwi.nl
Fri Jul 9 22:49:46 CEST 2004


On 9 Jul 2004, at 01:17, has wrote:
> Given that I'm angling for appscript's eventual inclusion in the 
> standard MacPython library, the code needs to be grokkable and 
> maintainable by others (lest I be hit by the Proverbial Bus someday). 
> How would using something like a home-rolled mixin scheme affect that? 
> e.g. Justifiable under certain circumstances? A complete non-starter?

Has,
I'm very interested in understanding this (as I'll probably be the 
default maintainer if it gets included in the standard distribution) 
but I have tried a couple of times to understand your message and I 
simply can't seem to grok it.

Could you come up with a more concrete example of what the problem is 
that you're trying to solve? Or, alternatively, explain the 
architecture that you're using for appscript at the moment.

The nice side of the old gensuitemodule architecture was that it was 
nicely compartmentalized, so you could really understand it a bit at a 
time: the C-stuff is completely self-contained, as is aepack. Aetypes 
had a bit more complexity, but it was all basically localized. 
Gensuitemodule is standalone, and the two-pass architecture made it 
also reasonably easy to understand. And the generated packages had (at 
the price of being incorrect:-) also only limited global complexity 
(the name lookups being the main one), with only limited dependency on 
magic implemented by aetypes.

Appscripting and aeve (when I last looked at them) both had a higher 
level of complexity, but that is something that I think can't be helped 
if you want to do things dynamically: data structures are always harder 
to read than Python code, and metaclasses and stuff don't really help 
either (at least, they don't for me:-). The downside of that complexity 
is that it becomes very hard to see the forest for the trees, so I know 
that it would at least help me a lot of you could provide a description 
of the forest...
--
Jack Jansen, <Jack.Jansen at cwi.nl>, http://www.cwi.nl/~jack
If I can't dance I don't want to be part of your revolution -- Emma 
Goldman



More information about the Pythonmac-SIG mailing list