a generic library for all languages