ucpp is a C preprocessor. It is designed to be quick and light, but still fully compliant to the ISO standard 9899:1999, also known as C99. ucpp can be compiled as a stand-alone program or linked to some other code; in the latter case, ucpp will output tokens, one at a time, on demand, as an integrated lexer. ucpp operates in two modes: in lexer mode, ucpp is linked to some other code and outputs a stream of tokens where each call to the lex() function will yield one token; in non-lexer mode, ucpp preprocesses text and outputs the resulting text to a file descriptor. If linked to some other code, the cpp() function must be called repeatedly, otherwise ucpp is a stand-alone binary.
cpuid.c is a very simple C abstraction that provides an interface to common cpuid feature flags. It can be useful when implementing dynamic CPU feature dispatch that relies on optional processor feature extensions or basic processor-specific variables. This package is meant to be a very simple feature detection interface that you can easily integrate into your project. It is not meant to be complex and it is geared for projects implementing dynamic CPU feature dispatch.
Sappeur is a safe and efficient programming language. The memory safety of Sappeur programs is equivalent to Java or .NET without having the performance penalties of those languages. This is implemented with smart pointers and stack allocation of objects and arrays. Also, arrays of objects and synchronous destructors are possible. Sappeur executables are native code and do not use a garbage collector. The safety properties of Sappeur are assured by a proper type system (which forbids weird pointer casts for example) and runtime checks. This is true for both single- and multithreaded programs. The Sappeur compiler translates programs into safe C++ programs, which makes integration with existing C++ code simple. Finally, Sappeur technology erects another layer of defense against cyber threats.
WavPack is a completely open audio compression format that provides lossless compression, high-quality lossy compression, and a unique hybrid compression mode. The lossless compression ratio depends on the source material, but generally is between 30% and 70%. The hybrid mode provides all the advantages of lossless compression with an additional feature. Instead of creating a single file, this mode creates both a relatively small, high-quality lossy file that can be used all by itself, and a "correction" file that (when combined with the lossy file) provides full lossless restoration. WavPack employs only well known, public domain techniques in its implementation. Methods and algorithms that have ever been patented are specifically avoided. This ensures that WavPack encoders and decoders will remain open and royalty-free.
hwloc provides command line tools and a C API to obtain the hierarchical map of key computing elements, such as: NUMA memory nodes, shared caches, processor sockets, processor cores, and processor "threads". hwloc also gathers various attributes such as cache and memory information, and is portable across a variety of different operating systems and platforms. hwloc primarily aims at helping high-performance computing (HPC) applications, but is also applicable to any project seeking to exploit code and/or data locality on modern computing platforms.
The dyncall library project provides a clean and portable C interface to dynamically issue foreign function calls using small call kernels written in assembly. Instead of providing code for every bridged function call, which unnecessarily results in code bloat, only a modest number of instructions are used to invoke all calls.