[C++-sig] Re: Refactoring, Compilation Speed, Pyste, Lua/Ruby/JavaScript...

Joel de Guzman djowel at gmx.co.uk
Mon Jun 16 13:17:05 CEST 2003


Brett Calcott wrote:
>>    converter - This stuff which handles Python-specific conversion
>>      mechanics is mostly already segregated in
>>      boost/python/converter, but it could be better organized. 
>>      Almost everything else in the library is built upon these
>> capabilities 
>> 
> 
> As somebody who has tried to go through the library, this bit is the
> part I'd really like to understand. I'm sure the reorganisation would
> help, but I'd
> really love to read a short doc on how this actually all hangs
> together. The registry, how the templates automates the construction
> of the PyObject and Type, how conversions are looked up (what's that
> graph stuff in there?). 
> 
> Though brilliant, the combination of templates and preprocessor makes
> it really (really, really) hard going. I've read through a fair bit
> of c/c++ code before, and I can say that this stuff is the hardest
> I've ever tried to decipher - and I know it is well written, not like
> most of the other stuff I've looked at. Even stepping through it in
> the debugger is not that enlightening.
> 
> I think I could use the library better and assist more in extending
> it if I could put all the bits together in my head.(I have in mind
> something like the big text file that Joel wrote for Phoenix.)

Which text file was that? Indeed, the preprocessor really gets in the 
way. Unfortunately, I had to bite the bullet too and the next Phoenix/LL 
code will have to be preprocessor driven.

> Just putting in a bid for your time Dave...

Some implementation notes would really help. Anyway, I promised
Dave to help with the reorganization. I'm not at all quite familiar with
the code but I sure could help in shuffling things around into modules,
to begin with.

Cheers,
-- 
Joel de Guzman
joel at boost-consulting.com
http://www.boost-consulting.com
http://spirit.sf.net





More information about the Cplusplus-sig mailing list