Feb 15 2005 So we're going to look at tree-like data structures which implement the following methods : ADD("string"); DELETE("string"); boolean = SEARCH("string"); "string" = FIRST(); "string" = NEXT(); On retrospect, it's a bit unclear how FIRST() and NEXT() should behave if ADD or DELETE are called between them. Since we'll have to preserve some sort of state to make these "traverse the elements" functions work, I think for the simplest thing I'll just reset the state after an ADD or DELETE. * copied usr_share_dict_words here, as found in Mac OS X 10.3 or so. * started Hash.pm, a simple implementation based on a perl hash. * h2xs -A -X -n Hash * edited the various files to make something do this based on a perl hash ... which should do the "ADD", "DELETE", "SEARCH" will, and the "FIRST", "NEXT" poorly for an ordered traversal.