HolyGrail is an implementation of the GTD's next action list. In other words, it's a kind of todo list. It is composed of realms (contexts), quests (projects), and missions (todos). A realm groups missions, and generally represents a location or a situation, e.g. "at work", "at home", or "code". A mission is the next physical action to do to complete your goal. A quest is a succession of missions; it represents a goal. Every time what you are planning requires more than one next action, create a project.
LibAPCNIS is a PHP library for accessing the NIS port of the Apcupsd UPS Monitoring daemon. It allows you to access realtime UPS stats from a PHP script without having Apcupsd installed. It does not require the apcaccess application included with an Apcupsd installation, and there are no external dependencies.
DeltaQt is a cross-platform library of C++ classes and functions for parsing of DELTA (DEscription Language for TAxonomy) files, and is part of the Free DELTA initiative. Support for all major data-related DELTA directives is planned. Typesetting directives are beyond the scope of the project, and support for them is not planned. Support for RTF formatting within comments, notes, descriptions, etc. is planned. All data defined by supported DELTA directives (including comments and annotations) will be parsed into memory. Qt (core) is used extensively.
Storing binary (boolean) matrices where each element is a byte (or worse, a 32 or 64 bit integer) is incredibly inefficient and wasteful, both in time and space. For example, a 10k square matrix requires 400Mb of RAM if stored as 32 bit int values. Binmat is a library that bit-packs these matrices so that this 10k square matrix requires just 12.5Mb (the minimum space possible). More than that, binmat takes advantage of extremely fast bit-operations when multiplying matrices. The usual series of multiplications and additions required to compute each element are replaced by bitwise AND and OR operations. Furthermore, on 64-bit hardware each bitwise operation can replace up to 64 multiplications or additions, reducing operations that can take hundreds of clock cycles down to just a single cycle. This gives rise to some very considerable performance increases, especially when taking the power of a matrix. Binary exponentiation is implemented to further improve the performance of higher matrix powers.
PdfParser is a standalone PHP library that provides various tools for extracting data from PDF files. It loads and parses objects and headers, extracts meta data, and extracts text from ordered pages. It supports compressed PDF, MAC OS Roman charset encoding, hex and octal encoding in text sections, and is compliant with PSR-0 (autoloader) and PSR-1 (code styling). Currently, secured documents are not supported.
C Almost Generic Library (CAGL) is a set of C macros which generates typed arrays, lists (singly or doubly-linked), hash tables, and balanced binary trees, as well as many useful functions to manipulate them. The containers grow automatically, and their memory is managed by the library. The container data, or elements, may also be managed by the library, depending on the options specified by the programmer. The aim is to free C programmers from the drudgery of implementing common data structures and algorithms. CAGL also provides some safety by making the containers typed instead of void pointers. Although, at most, two macros are invoked to declare and define a container type, manipulation of the containers is done using functions generated by the macros. A simple naming convention is used to get around the limitation that C doesn't support function overloading.