I put together a quick LRU for glib/gobject. The GLruCache is a GObject and thus reference counted. Its a transparent cache, so requesting items from the cache that do not exist are retrieved through a delegate.
I expect to merge this with my C version of the BdbListStore to add the same deserialization cache that the c# version has.
Have I mentioned how annoying it is that Fedora 10, Ubuntu 8.10, and openSUSE 11.1 all ship different versions of berkeley db?
-- Christian Hergert 2009-01-19