Is there a strong opinion about Future.resultNow and exceptionNow throwing IllegalStateException? It seems there will likely be boilerplate try-catching, as there is no safe way to inquire in what way the Future is isDone. Returning Optional seems a nicer alternative. Alex