I'm trying to understand futures in Python by reading the PyMotW guide.
I asked a question yesterday, and in the comments, it was stated that:
A more serious issue with the guide is that creating and manipulating raw futures is considered bad style in modern async programming.
I tried searching for more information, but the closest I found was in the Python guide about Future:
The rule of thumb is to never expose Future objects in user-facing APIs, and the recommended way to create a Future object is to call loop.create_future(). This way alternative event loop implementations can inject their own optimized implementations of a Future object.
Question:
Why is it considered bad practice to create and manipulate futures? Are the reasons documented somewhere?