{"slug": "exception-annotations-lay-of-the-land", "title": "Exception Annotations: Lay of the Land", "summary": "The article discusses the design and limitations of exception annotations in Haskell, noting that the `annotated-exception` library works on older GHC versions but forces all library consumers to use the `AnnotatedException` wrapper. The author plans to incorporate new `ExceptionContext` changes into the library without compromising its utility and user experience.", "body_md": "I completely agree. I remember advocating heavily for the adoption of being part of a lot of the design discussions around this feature (Original blog post, the library as it is today), and I do not at all recall this being a thing anyone needed or wanted.\nannotated-exception\nworks today and on older GHCs and does not contain these warts nearly as much; but it is unfortunately limited for library development because it forces all consumers of your library to adopt annotated-exception\nand deal with the AnnotatedException\nwrapper. My next plan for the library is to figure out how to incorporate the new ExceptionContext\nchanges without ruining the utility and UX of the library.", "url": "https://wpnews.pro/news/exception-annotations-lay-of-the-land", "canonical_source": "https://discourse.haskell.org/t/exception-annotations-lay-of-the-land/14056#post_7", "published_at": "2026-05-22 19:31:47+00:00", "updated_at": "2026-05-22 19:36:41.103929+00:00", "lang": "en", "topics": ["developer-tools", "open-source"], "entities": ["annotated-exception", "ExceptionContext", "AnnotatedException"], "alternates": {"html": "https://wpnews.pro/news/exception-annotations-lay-of-the-land", "markdown": "https://wpnews.pro/news/exception-annotations-lay-of-the-land.md", "text": "https://wpnews.pro/news/exception-annotations-lay-of-the-land.txt", "jsonld": "https://wpnews.pro/news/exception-annotations-lay-of-the-land.jsonld"}}