And it's madness.
With this style, all the functions expose their implementation details, every single thing they use to accomplish their task. It totally destroys encapsulation.
Then you have the problem that if one of these functions decides to add one more thing, say log a message, then all its callers need to pass it a logger. And all the callers of its callers also need to pass a logger.
And of course, they need to find a way to materialize such a logger in the first place.
Insane advice.
Dependency injection is popular for a reason.