{"comment":{"url":"https://api.github.com/repos/natefaubion/purescript/comments/14895468","html_url":"https://github.com/natefaubion/purescript/commit/9e75ca92807c8097cce1d83554db430950d90699#commitcomment-14895468","id":14895468,"user":{"login":"garyb","id":693642,"avatar_url":"https://avatars.githubusercontent.com/u/693642?v=3","gravatar_id":"","url":"https://api.github.com/users/garyb","html_url":"https://github.com/garyb","followers_url":"https://api.github.com/users/garyb/followers","following_url":"https://api.github.com/users/garyb/following{/other_user}","gists_url":"https://api.github.com/users/garyb/gists{/gist_id}","starred_url":"https://api.github.com/users/garyb/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/garyb/subscriptions","organizations_url":"https://api.github.com/users/garyb/orgs","repos_url":"https://api.github.com/users/garyb/repos","events_url":"https://api.github.com/users/garyb/events{/privacy}","received_events_url":"https://api.github.com/users/garyb/received_events","type":"User","site_admin":false},"position":23,"line":72,"path":"src/Language/PureScript/Sugar/CaseDeclarations.hs","commit_id":"9e75ca92807c8097cce1d83554db430950d90699","created_at":"2015-12-10T09:53:26Z","updated_at":"2015-12-10T09:53:26Z","body":"This seems fine to me, and no, the way you're throwing the positioned error here is probably the most convenient for this particular case. The other option is to use a top-down traversal and `throwError` the inner case if I remember rightly, but this should be fine.\r\n\r\nI'm starting to really wish we'd gone the cofree comonad approach for annotating the AST rather than using these `PositionedX` constructors in the AST :smile:"}}