Gang, I'm glad to see Doug still working on the Judy library, and responding to emails here. But, he wrote:
> I have to agree with you about the readability of Judy. Alan did his > best to obscure the code -- perhaps unintentionally. For the record: I took a lot of highly redundant code, thousands of lines, and over time, with Doug's (grudging) approval and continued interaction, cleaned it up and ensured it was well formatted and documented. The conscientious use of macros was to replace large sections of code, typically eight repetitions with dozens of lines in each instance and only minor differences, that were also mind-numbing to comprehend in their own way. We agreed that for performance the code had to be "maximally unrolled", the question was how to do that while also making it elegant (and portable, and reliable). As I've written before, if we had but known (and had them available on HPUX), we should have used in-line functions. The macros themselves are not attractive due to the backslashes and other constraints, but should not be so difficult to understand if you just think of them as inline functions, and are not so difficult to debug through if you (as we did) use the makefile to expand them for debuggable code. I'm glad Doug has now determined that function call overhead is so low there's no reason not to modularize code into functions (inlined or not). Doug saying that I "did my best to obscure the code" is at best a gross distortion. Without my involvement, HP would never have funded the Judy project in the first place. Doug and I worked long and hard together for more than two years, along with several others who joined the project. It was a productive collaboration of great diversity. For example, where Doug had a ruthless focus on performance, I worked hard on concepts, terminology, documentation, infrastructure, build, test, and presentation issues so that together we could articulate a quality product. We wrestled with innumerable data structure and algorithm conundrums to create Judy IV as we learned and re-learned the best way to solve a myriad of problems. Cheers, Alan Silverstein ------------------------------------------------------------------------- This SF.net email is sponsored by DB2 Express Download DB2 Express C - the FREE version of DB2 express and take control of your XML. No limits. Just data. Click to get it now. http://sourceforge.net/powerbar/db2/ _______________________________________________ Judy-devel mailing list [email protected] https://lists.sourceforge.net/lists/listinfo/judy-devel
