CityHash provides hash functions for strings. The functions mix the
input bits thoroughly but are not suitable for cryptography. See
"Hash Quality," below, for details on how CityHash was tested and so on.
Functions by CityHash:
- CityHash32() returns a 32-bit hash.
- CityHash64() and similar return a 64-bit hash.
- CityHash128() and similar return a 128-bit hash and are tuned for
strings of at least a few hundred bytes. Depending on your compiler
and hardware, it's likely faster than CityHash64() on sufficiently long
strings. It's slower than necessary on shorter strings, but we expect
that case to be relatively unimportant.
- CityHashCrc128() and similar are variants of CityHash128() that depend
on _mm_crc32_u64(), an intrinsic that compiles to a CRC32 instruction
on some CPUs. However, none of the functions we provide are CRCs.
- CityHashCrc256() is a variant of CityHashCrc128() that also depends
on _mm_crc32_u64(). It returns a 256-bit hash.
All members of the CityHash family were designed with heavy reliance
on previous work by Austin Appleby, Bob Jenkins, and others.
For example, CityHash32 has many similarities with Murmur3a.
nxt-python is a python driver/interface for the Lego Mindstorms NXT robot. The
1.x releases aim to improve on NXT_Python's interface and should be compatible
with scripts which use it while the 2.x releases improve on the API in
backwards-incompatible ways and will not work with NXT_Python scripts.
pydasm is a python interface to libdasm, the best x86 disassembling
library out there.
gitinspector is a statistical analysis tool for git repositories. The
defaut analysis shows general statistics per author, which can be
complemented with a timeline analysis that shows the workload and
activity of each author. Under normal operation, it filters the
results to only show statistics about a number of given extensions and
by default only includes source files in the statistical analysis.
gsubfn is an R package used for string matching, substitution and parsing. A
seemingly small generalization of gsub, namely allow the replacement string to
be a replacement function, list, formula or proto object, can result in
increased power and applicability. The resulting function, gsubfn is the
namesake of this package.
This library provides a collection of (macro-based) functions
for performing safe integer operations across platform and architecture
with a straightforward API.
It supports two modes of use: header-only and linked dynamic library.
The linked, dynamic library supplies a format-string based interface
which is in pre-alpha. The header-only mode supplies integer and sign
overflow and underflow pre-condition checks using checks derived from
the CERT secure coding guide. The checks do not rely on twos complement
arithmetic and should not at any point perform an arithmetic operations
that may overflow. It also performs basic type agreement checks to ensure
that the macros are being used (somewhat) correctly.
Argparse takes the best of the optparse command-line parsing module and brings
it new life. Argparse adds positional as well as optional arguments, the
ability to create parsers for sub-commands, more informative help and usage
messages, and much more. At the same time, it retains the ease and flexibility
of use that made optparse so popular.
Binary property list (plist) parser module written in python.
An extremely memory-efficient hash_map implementation. 2 bits/entry overhead!
The Google SparseHash project contains several hash-map implementations in use
at Google, with different performance characteristics, including an
implementation that optimizes for space and one that optimizes for speed.
libdasm is a C-library that tries to provide simple and convenient
way to disassemble Intel x86 raw opcode bytes (machine code). It
can parse and print out opcodes in AT&T and Intel syntax.