Scenarios
Futures, while they can represent any type of values, are often used in specific scenarios.
One of the scenarios is I/O operation, such as reading from the Internet, or writing to a local file system, etc.
Diagram: Function foo obtains data through the BSD socket interface read in
nonblocking mode.