interfaces Generic interfaces for any language and purpose implementations Implementations of the interfaces