The interfaces of libraries in functional programming