From: David G. <go...@py...> - 2004-04-15 04:40:58
|
Edward Loper wrote: > I'm looking at generalizing Docutils interpreted role system (along > the lines of the generalized directives system), Great! That's been on my mind lately too. > but I was unclear about why the directives system was designed the > way it was. Seemed like a good idea at the time. ;-) > In particular, it seems to go through a fair amount of convolutions > to avoid loading submodules that it won't use. That wasn't the motivation. I never even thought of saving time by avoiding unnecessary imports. > What's the motivation behind this? To the reStructuredText markup language, directives are like extension modules. It just seemed natural to load them as required. Avoiding circular imports may have played a part as well. Now I can imagine that the number of directives may grow to the point where loading them all beforehand *will* become prohibitively expensive. Much of the complexity of the directive loading mechanism is related to the multilingual feature, looking up directives by current-language name, indexed into the registry of canonical names. However, much of the complexity may just be over-engineering (I'm as guilty of that as the next guy, though I try to abstain ;-). I've started to write my replies to the "Processing inline roles" thread, but it's too late and I'm too tired. Will follow up later. -- David Goodger http://python.net/~goodger For hire: http://python.net/~goodger/cv |