apd is a C library that allows very flexible assertions and logging, which can be changed in several ways either at compile-time or run-time. Because all logging and assertions code can be removed at compile-time, it is especially useful for speed-critical code such as numerical algorithms.
apd requires a C compiler capable of the C99 standard. It has so far only been tested on the GNU gcc compiler.
For a short introduction to apd, see the introduction in the documentation and the features in the next section.