In this talk, we look at context receivers: what they are, and how they can be applied to simplify our code. In particular, we look at them from three perspectives:
- How they simplify dependency injection,
- How to model detached interfaces, like Comparable,
- How to describe scopes, like the ones for errors.