Greg et al,

> Can you please elaborate on what JudyNL is?

It was an early version of arbitrary-length keys that were not C
strings.  The "NL" means N words, mapped to Long word.  This is a hard
problem if you want the keys sorted in any way other than length-first.
See the summary here:

  http://silgro.com/libJudySummary.htm

(I'm going to make some improvements based on feedback, but haven't
yet.)

If I recall, JudyNL was limited to whole-word lengths, not byte lengths.

Consider that C strings are what you can call "length-terminated", which
requires a distinguished char value for the terminator, but Perl strings
and other arbitrary-length values used as keys/indexes are
"length-associated".  It's not hard to make a JudyL[length] ->
JudyL[word0] -> ... hierarchy to implement JudyNL or equivalent, but
then it must be sorted by length ("length-first").  To sort from first
to last bits, while still knowing when to terminate, requires carrying
some kind of length or termination information down the tree, and there
are no spare bits in a Judy1/JudyL array for this, you'd have to expand
the data structure in significant ways, probably as a non-trivial
performance cost (both space and speed, latter due to cache issues).

> Also, I may have asked this some years back, but are there any plans
> to support find-next for JudyHS?

No idea, that's up to Doug.  I know JudySL has get-next.

Alan Silverstein

------------------------------------------------------------------------------
OpenSolaris 2009.06 is a cutting edge operating system for enterprises 
looking to deploy the next generation of Solaris that includes the latest 
innovations from Sun and the OpenSource community. Download a copy and 
enjoy capabilities such as Networking, Storage and Virtualization. 
Go to: http://p.sf.net/sfu/opensolaris-get
_______________________________________________
Judy-devel mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/judy-devel

Reply via email to