Note that there are some explanatory texts on larger screens.

plurals
  1. PO
    text
    copied!<p>Judy really doesn't fit well with managed languages. I don't think you'll be able to use something like SWIG and get the first layer done automatically.</p> <p>I wrote PyJudy and I ended up having to make some non-trivial API changes to fit well in Python. For example, I wrote in the documentation:</p> <blockquote> <p>JudyL arrays map machine words to machine words. In practice the words store unsigned integers or pointers. PyJudy supports all four mappings as distinct classes.</p> </blockquote> <ul> <li>pyjudy.JudyLIntInt - map unsigned integer keys to unsigned integer values</li> <li>pyjudy.JudyLIntObj - map unsigned integer keys to Python object values</li> <li>pyjudy.JudyLObjInt - map Python object keys to unsigned integer values</li> <li>pyjudy.JudyLObjObj - map Python object keys to Python object values</li> </ul> <p>I haven't looked at the code for a few years so my memories about it are pretty hazy. It was my first Python extension library, and I remember I hacked together a sort of template system for code generation. Nowadays I would use something like genshi.</p> <p>I can't point to alternatives to Judy - that's one reason why I'm searching Stackoverflow.</p> <p>Edit: I've been told that my timing numbers in the documentation are off from what Judy's documentation suggests because Judy is developed for 64-bit cache lines and my PowerBook was only 32 bits.</p> <p>Some other links:</p> <ul> <li>Patricia tries (<a href="http://www.csse.monash.edu.au/~lloyd/tildeAlgDS/Tree/PATRICIA/" rel="noreferrer">http://www.csse.monash.edu.au/~lloyd/tildeAlgDS/Tree/PATRICIA/</a> )</li> <li>Double-Array tries (<a href="http://linux.thai.net/~thep/datrie/datrie.html" rel="noreferrer">http://linux.thai.net/~thep/datrie/datrie.html</a>)</li> <li>HAT-trie (<a href="http://members.optusnet.com.au/~askitisn/index.html" rel="noreferrer">http://members.optusnet.com.au/~askitisn/index.html</a>)</li> </ul> <p>The last has comparison numbers for different high-performance trie implementations.</p>
 

Querying!

 
Guidance

SQuiL has stopped working due to an internal error.

If you are curious you may find further information in the browser console, which is accessible through the devtools (F12).

Reload