John and all, > It's very precise. Once you understand it you do not need the manual, > you can calculate from first principles what the API must be (more or > less :)
Right, and the practical problem is that type-weakness in C allows you to make coding errors that aren't detected at compile-time. We knew about that but didn't have a good solution. (I know, I know, just use Felix...) > As for killer apps .. that's the wrong idea. There are numerous > places in most code where Judy is the ONLY data structure that can be > used: OK, but selling a new coding library (as HP wanted to do) is even harder than selling a new mousetrap. Again, my take-away metaphor from that time was that programmers needed to have it in their toolboxes during implementation phase, and the question was how to get it there. How does any successful language, tool, or library get "into the toolbox?" It's a bit of a mystery to me because there are so many crappy ones out there that still managed to at least temporarily win the evolutionary arms race. I think a key to success is to do what's today called "go viral," meaning people hear about it from other people and think, "I gotta get me some of that" -- politics, standards, or crappy aspects of the product be damned. > ...it is perfectly safe to iterate through a judy array and modify it > as you go. Try doing THAT with an STL container! Yup. > The core restriction on Judy is that the key has to be a machine word > or a null terminated string. The value can be anything (just use a > pointer). Although as I've mentioned before, a lot of academic cycles are spun on issues that assume from the get-go that both keys and values must be variable-length; either choose a number up front, or even worse (but naturally more common), all lengths allowed. Null-terminated strings (JudySL) are built on top of JudyL, showing that mixing arbitrary-length keys is fine, but if you want length-associated instead of length-terminated keys, you pretty much have to sort first by length (which is at least very cheap and fast using JudyL), even if you miss out on sorted-by-accident as a "free" side-effect. The JudyN code which is out there somewhere illustrates exactly how to do this. With arbitrary-length keys sorted by length, you can put any bytes at all you want into the key, similar to Perl strings. Cheers, Alan Silverstein ------------------------------------------------------------------------------ Managing the Performance of Cloud-Based Applications Take advantage of what the Cloud has to offer - Avoid Common Pitfalls. Read the Whitepaper. http://pubads.g.doubleclick.net/gampad/clk?id=121054471&iu=/4140/ostg.clktrk _______________________________________________ Judy-devel mailing list [email protected] https://lists.sourceforge.net/lists/listinfo/judy-devel
