> I personally value knowing what exactly from current scope is passed into the function I'm calling
With monads, that's explicitly specified in the type of the function. For me that's enough, and passing it explicitly the way I'm doing in Python feels like boilerplate.
1/