The Perl Toolchain Summit needs more sponsors. If your company depends on Perl, please support this very important event.
Revision history for Perl extension List::SkipList. (Changes which may
not be backwards compatible are marked with an asterisk '*'.)

0.62  Tue May 18 2004
	- fixed typo in (commented-out) assertion
	- additional minor optimizations and code cleanup

0.61  Mon May 17 2004
	* find no longer returns a finger in array context
	* header is now a special subclass of List::SkipList::Node
	- added special Null subclass of Header
	- added null() method to return global null node
	- a lot of minor code optimizations
	- added comments
	- maximum level of new nodes changed so that it is based on size
          of list
	- updated Benchmark.txt file

0.60  Sat Apr 24 2004
	- updates to POD
	- cleaned up comments
	- added next function
	- redid last_key, first_key and next_key functions
	- last_key accepts arguments to modify LASTKEY
	- changed calls to die to croak
	- added experimental hooks to implement prev and prev_key methods
	- added stub prev_key method
	- bug fix: reset method called during copy method
	- added more tests to heavy test script
	* renamed find to find_with_finger and added find for searches
          which do not return updated fingers
	* renamed _search to _search_with_finger and added _search for
	  searches which do not return updated fingers
	- modified next_key test to check for initial key of "0"
	- removed if (CACHE_INSERT_FINGERS) tests
	- additional optimizations and code cleanup
	- added test to search for non-existent keys in Benchmark.pl

0.51  Mon Apr 12 2004
	- fixed bug with next_key method called without first_key
	- added tests for this bug
	- added "heavy" test to distribution
	- minor optimizations of delete method
	- assertions are no longer required (which leads to ~3% speedup)
	  and removed section in POD about assertions
	- removed commented-out references to forward method
	- minor updates to source code comments

0.50  Mon Mar 29 2004
	- section about Assertions added to POD
	- documented level() method
	- clear method now intitializes initial node header
	- added various assertions
	* removed the forward method from *::Node
	- uses enum module
	- added test for non-integer keys
	- clear method now resets LAST_INSRT cache
	- removed use of LEVEL for List::SkipList::Node
	* key_cmp method accesses KEY directly rather than uses the key method
	* calling convention for List::SkipList::Node is changed
	- various optimizations to List::SkipList and *::Node
	- added comparison to Tree::RedBlack in Benchmark.pl
	- minor changes to _search method
	- added Benchmark.pl script for generating benchmarks in distro
	- redesigned benchmarking script

0.42  Sat Mar 20 2004
	- fixed bug with Build.PL not autospliting files

0.41  Fri Mar 19 2004
	* List::SkipList::Node is now array-based rather than hash-based
	  to improve speed.
	- updates to POD, README, Benchmark.txt
	- added search method as alias to find
	- renamed Benchmark to Benchmark.txt
	- optimized deletions

0.40  Wed Mar 17 2004
	- added Benchmark file to distribution
	* key_cmp now ignores when key is undefined
	- _insert returns the value of $node->key_cmp($key)
	- broke up test cases into separate files
	- added finger caching to speed up sequential inserts
	- fixed bugs with values, keys, copy, merge, first_key and next_key
          methods related to use of search fingers
	- fixed bug with append method
	- fixed bug with search fingers: they were not being used
	- _debug now prints to STDERR
	* reset method is not called when a new node is added or deleted
          (which is in accord with documentation)
	- stub for next method added
	- List::SkipList::Node ignores invalid and extra arguments
	- minor optimizations in List::SkipList and List::SkipList::Node
	- improved speed of _random_level
	- disabled assertions (for 50% speed improvement!)
	- inserted corrected comment in README about actual performance in
	  comparison to trees

0.33  Tue Mar 16 2004
	- fixed typos in test cases that caused Makefile tests to fail
	- removed causes of warnings in 01-SkipList.t
	- replaced explicit package names with __PACKAGE__ placeholder

0.32  Mon Mar 15 2004
	- renamed test.pl to t/01-SkipList.t
	- added Build.PL to distribution
        - updated README
	- corrected and updated POD

0.31  Fri Feb 13 2004
	- removed memoized node example from POD
	- reformatted E-mail addresses in various files to foil
	  spam harvesters
	- changes calls to keys to CORE::keys [Bug 5317]
	- added version to List::SkipList::Node
	- corrected errors in POD formatting
	- corrected and updated POD
	- added META.yml file to distribution

0.30  Tue Dec  2 2003
	- ability to tie hashes
	- made some methods autoloading
	- added last_key and reset methods to allow auto-enumeration
	- added least, greatest, keys and values methods
	- added _first_node, merge, append and copy methods
	- insert now returns a finger
	- more updates to documentation

0.21  Wed Nov 26 2003
	- bug fix: first_key method returns a proper finger
	- added documentation and tests about memoization

0.20  Wed Nov 26 2003
	- if no last_key specified for next_key, it returns first_key
	- search fingers added
	- find, first_key, next_key return a list in list context as part of
	  support for search fingers
	- minor changes to documentation

0.13  Wed Nov 19 2003
	- added call to validate_key in key_cmp in Node

0.12  Wed Nov 19 2003
	- added validate_key and validate_node methods to Node

0.11  Sun Nov 16 2003
	- modified test script to better check next_key function
	- bug fix: next_key did not check that $last_key existed

0.10  Sat Nov 15 01:11:00 2003
	- updated test script appropriately
	- added first_key and next_key methods
	- added ability to customize List::SkipList::Node
	- moved debug method to after __END__ block
	- renamed random_level to _random_level
	- changed type checking to use isa() method
	- updated documentation

0.02  Fri Nov 14 01:08:00 2003
	- incorporated experimental code into module
	- began writing initial test script

0.01  Fri Nov 14 00:50:00 2003
	- original version; created by h2xs 1.21 with options
		-X -n List::SkipList -v 0.01

0.00  Wed Nov 12 2003
	- experimental versions, unreleased.