Re: [Haskell-cafe] Decorating exceptions with backtrace information
Ben Gamari <[email protected]>
| Newsgroups | gmane.comp.lang.haskell.ghc.devel,gmane.comp.lang.haskell.glasgow.user,gmane.comp.lang.haskell.cafe |
|---|---|
| Message-ID | <[email protected]> |
Henning Thielemann <[email protected]> writes: > On Fri, 8 May 2020, Niklas Hambüchen wrote: > >> On 5/8/20 5:37 PM, Henning Thielemann wrote: >> >>> a callstack is not useful for a user. >> >> Call stacks have been very useful to me as a user of non-Haskell tools >> so far, because they are excellent for attaching to bug reports and >> usually led to developers fixing my problems faster. > > This confirms that they are not for you, but you only forward them to the > developer. > > > Can someone please give me examples where current state lacks and how they > are addressed by the proposal(s)? We can debate whether partial functions like `fromJust` should exist; however, the fact of the matter is that they do exist and they are used. Furthermore, even `base`'s own IO library (e.g. `openFile`) uses synchronous exceptions to report errors. This becomes particularly painful when building large systems: Even if I am careful to avoid such functions in my own code, as my dependency footprint grows it becomes more likely that some transitive dependency will expose a partial interface (perhaps even without my knowledge). This is a problem that industrial users are all too familiar with. Perhaps this helps to shed some light on the motivation? Cheers, - Ben _______________________________________________ ghc-devs mailing list [email protected] http://mail.haskell.org/cgi-bin/mailman/listinfo/ghc-devs
signature.asc
(application/pgp-signature, 487 B)
-----BEGIN PGP SIGNATURE----- iQEzBAEBCAAdFiEEmwpsh4C13+CdDZRjcVB86Evun78FAl61nvcACgkQcVB86Evu n7/qGAgAtnBF8Q05AgAY5DeFxppHv+IWLEEfvnvWZEsuKizWc0JxKGoG5JHY5AiL JytLl56m2JFJ7xo9AZpQjQcrkqL5yJ7UtMoa3cqdd5mQA23/I+ATbcuM9WQ/pzPw IsBGZyNMXI1PIjQMn2pp/5PZvIKYVcvnanL5GPasuLuk835CVupnG5C5G4YwKX3M dSKOkL19XTmS0/gfJA6F2wqQ5BrjDElSbXTabyWxDKdxpWpGk9oks0i/MwS0Gby+ Bjn5Rd6v1p2fGvw994XKAywUP0+XWAX2ZeSNiByfgpzSJQzu/LL61/M0HnUW7zaf bodOqcUdeTGZhSRR87yimFPrmJU3Yg== =MdI5 -----END PGP SIGNATURE-----