Poor man's dependency injection in Clojure
spootnik.org
spootnik.org
I'd like to think it's common for programs to need extensions & plugins, without it deriving from "the point of of clojure".
Dependency injection takes a thing that should be one line of code and makes it twenty lines. It requires third party developers to have know all kinds of unnecessary implementation details. DI is a piece of shit that should be a measure of last resort and if you find yourself resorting to it often maybe question your entire architecture.
I have yet to meet one person to convince me that DI is not unnecessary in most cases. It always boils down to making writing tests easier. Well you should not shit all over your public APIs for the sake of testing.
It's just a rather a simple mechanism to provide an extension mechanism for a daemon.
Update: I looked at the code again and noticed that `stdin-transport` implements two protocols. Guess I need to think a little bit more about this.