CMPH - C Minimal Perfect Hashing Library
A perfect hash function maps a static set of n keys into a set of m integer
numbers without collisions, where m is greater than or equal to n. If m is equal
to n, the function is called minimal.
Minimal perfect hash functions are widely used for memory efficient storage and
fast retrieval of items from static sets, such as words in natural languages,
reserved words in programming languages or interactive systems, universal
resource locations (URLs) in Web search engines, or item sets in data mining
techniques. Therefore, there are applications for minimal perfect hash functions
in information retrieval systems, database systems, language translation
systems, electronic commerce systems, compilers, operating systems, among
others.
Coccinelle is a program matching and transformation engine which provides the
language SmPL (Semantic Patch Language) for specifying desired matches and
transformations in C code. Coccinelle was initially targeted towards performing
collateral evolutions in Linux. Such evolutions comprise the changes that are
needed in client code in response to evolutions in library APIs, and may
include modifications such as renaming a function, adding a function argument
whose value is somehow context-dependent, and reorganizing a data
structure. Beyond collateral evolutions, Coccinelle is successfully used (by us
and others) for finding and fixing bugs in systems code.
Code::Blocks is an open source, cross-platform and free C/C++ IDE.
It is build using the wxWidgets GUI library.
The WEB site states:
"Code::Blocks is a free C++ IDE built specifically to meet
the most demanding needs of its users. It was designed, right
from the start, to be extensible and configurable."
LICENSE: GPL3 or later (IDE)
LICENSE: LGPL3 or later (SDK)
Boost provides free peer-reviewed portable C++ source libraries.
The emphasis is on libraries that work well with the C++ Standard
Library. Boost libraries are intended to be widely useful, and usable
across a broad spectrum of applications. The Boost license encourages
both commercial and non-commercial use.
The goal is to establish "existing practice" and provide reference
implementations so that Boost libraries are suitable for eventual
standardization. Ten Boost libraries are already included in the C++
Standards Committee's Library Technical Report (TR1) and will be in
the new C++0x Standard now being finalized. C++0x will also include
several more Boost libraries in addition to those from TR1. More Boost
libraries are proposed for TR2.
Boost.Jam (BJam) is a build tool based on FTJam, which in turn is
based on Perforce Jam. It contains significant improvements made to
facilitate its use in the Boost Build System, but should be backward
compatible with Perforce Jam.
Concurrency Kit provides a plethora of concurrency primitives, safe memory
reclamation mechanisms and non-blocking data structures designed to aid in
the design and implementation of high performance concurrent systems.
BSDBuild is a simple, self-contained and portable build system derived from the
traditional 4.4BSD share/mk files. BSDBuild uses BSD-style makefiles, but
without BSD make extensions (it uses standard Bourne script fragments instead),
so the build system is portable to most operating systems and make flavors.
Because BSDBuild is implemented as a library, Makefiles never need to be
recompiled (unless a separate build is requested). BSDBuild can also generate
pure Bourne ./configure scripts, which function similarly to GNU-style
configure scripts (as far as end-users are concerned), but are compiled using
Perl modules instead of macro packages.
CppTest is a portable and powerful, yet simple, unit testing framework for
handling automated tests in C++. The focus lies on usability and extendability.
Several output formats, including simple text output, compiler-like output and
HTML, are supported and new ones are easily added.
This is the library to allow connections to an Monetra Payment
Processing Daemon via SSL and TCP/IP.
It is the base of other APIs including PHP, PERL, and JAVA.
Lego Mindstorms NXT firmware management tools and library.