Re: twisted

Steven Armstrong <[email protected]>
Newsgroups gmane.comp.web.pyblosxom.devel
Message-ID <[email protected]>
On 03/29/05 21:27, will guaraldi wrote:
> On Tue, 29 Mar 2005, Steven Armstrong wrote:
>>>
>>> I totaly agree on this. I think it would generally be good to move from 
>>> the "collection of scripts" design to a more "application" design.
>>
>> Additional note:
>> The above statement is based on my attempts writing a nevow-renderer for
>> Pyblosxom. The design of how callbacks are processed, and the way the
>> plugin system works, gave me some headaches with this.
>> 
>> I think Pyblosxom does what it's ment to do, and does that well. But I 
>> also think that it would be easier to extend/enchance it if their would 
>> me more "well known interfaces" between the different parts of the 
>> system.
> 
> Well, what do you mean by "well known interfaces" between the different 
> parts of the system?  Can you give any examples?
> 

I found it difficult to write my nevow-renderer in a generically working
way cause the plugin system is so flexible that you can do just about
anything at any time from within a plugin.
That ment that their could be special cases depending on what plugins
are loaded. The result is that I can use the nevow-renderer but it's
unlikely that anybody else, with only a slitely different setup, could
run it.

For example the comments plugin directly accesses the renderer's
outputTemplate methods. It also changes the loaded templates on the fly.
As I wanted to use a nevow-template and renderer, which work totally
different than the standard engine, this made things difficult. There's
no way I could have implemented this without hacking the comments plugin.

It would have been much easier if plugins would not change or access the
internals in such a way, and instead tell the core system to do that for
them.

If I have to hack plugins to work with changes made to the underlying
system that's IMHO a sign that "well known interfaces" are missing.
On the other hand, maybe I was just trying to do something that's
totally incompatible with Pyblosxoms design.

I don't know if this is a good example or if I was able to explains my
thoughts well enough.

cheers
Steven




-------------------------------------------------------
SF email is sponsored by - The IT Product Guide
Read honest & candid reviews on hundreds of IT Products from real users.
Discover which products truly live up to the hype. Start reading now.
http://ads.osdn.com/?ad_id=6595&alloc_id=14396&op=click
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.