From error-handling to structured concurrency
blog.nelhage.com