it provides an interface with more advanced primitives