# Guiding Principles

This page acts as a reference for concepts and principles that are mentioned throughout the documentation.

## Infer as much as possible

If a function or constructor only requires types that the container already knows how to build, we simply supply them.
You can still register a custom implementation if you want, but you are not required to.

```python
from diy import 

```
