SE-0413: Typed throws

Admittedly, the compiler could detect this and essentially just ban it, by throwing an error a la "Cannot determine if you meant to make this function async or throw the Error type async (you should probably rename your async struct)".

But there are other potential benefits of the parenthesis, like readability through compartmentalisation. e.g. for throws(some NetworkError), let-alone for less trivial types like throws(some NetworkError & LoggableError & ChainableError).

2 Likes