Future<String> someLongComputation() async { ... } above, someLongComputation will immediately return a future, and after some time, said future will resolve with a string. What the await keyword does is wait until the future has returned a value and then returns said value, basically turning an asynchronous computation into a synchronous one, of course this would negate the whole point of ...

Understanding the Context