
On Thu, Oct 11, 2007 at 09:56:16PM -0700, Eric Mertens wrote:
I don't know if anyone else feels the same way about sandboxing "user-code," but I think that sprinkling catch all over any code that calls XMonadContrib code is a complete abuse of the catch mechanism. In my opinion the only exceptions that xmonad should be trying to catch are those that are truly exceptional errors as thrown by, for example, X11. Ignoring bad contrib code errors and pretending like they don't exists seems completely counter to xmonad's goal of being solid, tested code.
The trouble is that there's no way to catch errors in the Config file introduced by users who have never before written Haskell code without also catching errors in Contrib. I'd say that if we want to be friendly to folks that are new to Haskell, and at least make an attempt to give the impression that Haskell is a language that can be used to write robust programs. Perhaps you feel that they should be taught the perhaps more valuable lesson that pure code does not mean bug free code that doesn't crash and burn.
In summary, I feel that there is a difference between not having errors and ignoring them. Xmonad is still in active development and bad code should be as visible as possible.
I disagree. Most errors caught by catchX will still be visible bugs. Bugs that cause your X server to restart losing all your work are bugs that users aren't so likely to be eager to reproduce for us. On the plus side, removing the catchX calls will make me more productive at work, since I won't be willing to do xmonad development... or at least, if I do xmonad development I won't be willing to test the code I write. -- David Roundy Department of Physics Oregon State University