Dependency injection can be functional if we compose potentially-pure functions and only inject impure functions at the last moment. This article is published in divex.dev. Here is the link: https://divex.dev/knowledge-base/main/dependency-injection-can-be-functional/