Prompted by beta.repology.org.
News for version 2.0
Cleaned up most warnings for the c code.
Experimental C++ interface (--enable-cxxmph) implementing the
BDZ algorithm in a convenient interface, which serves as the
basis for drop-in replacements for std::unordered_map,
sparsehash::sparse_hash_map and sparsehash::dense_hash_map.
Potentially faster lookup time at the expense of insertion time.
See cxxmpph/mph_map.h and cxxmph/mph_index.h for details.
Issues found with existing distfiles:
distfiles/eclipse-sourceBuild-srcIncluded-3.0.1.zip
distfiles/fortran-utils-1.1.tar.gz
distfiles/ivykis-0.39.tar.gz
distfiles/enum-1.11.tar.gz
distfiles/pvs-3.2-libraries.tgz
distfiles/pvs-3.2-linux.tgz
distfiles/pvs-3.2-solaris.tgz
distfiles/pvs-3.2-system.tgz
No changes made to these distinfo files.
Otherwise, existing SHA1 digests verified and found to be the same on
the machine holding the existing distfiles (morden). All existing
SHA1 digests retained for now as an audit trail.
The CMPH Library encapsulates the newest and more efficient algorithms in an
easy-to-use, production-quality, fast API. The library was designed to work
with big entries that cannot fit in the main memory. It has been used
successfully for constructing minimal perfect hash functions for sets with
more than 100 million of keys, and we intend to expand this number to the
order of billion of keys. Although there is a lack of similar libraries, we
can point out some of the distinguishable features of the CMPH Library:
- Fast.
- Space-efficient with main memory usage carefully documented.
- The best modern algorithms are available (or at least scheduled for
implementation :-)).
- Works with in-disk key sets through of using the adapter pattern.
- Serialization of hash functions.
- Portable C code (currently works on GNU/Linux and WIN32 and is reported
to work in OpenBSD and Solaris).
- Object oriented implementation.
- Easily extensible.
- Well encapsulated API aiming binary compatibility through releases.
- Free Software.