Discrete Mathematics Is Good - A C library for heterogeneous, dynamic data structures