Some good old-fashioned home-made data structures for C