Re: graceful degradation in the case of errors
"Claus Reinke" <[email protected]> Fri, 16 Feb 2007 00:11:06 -0000
| Newsgroups | gmane.comp.lang.haskell.hugs.bugs |
|---|---|
| Message-ID | <016401c7515e$f4d6c500$a3007ad5@cr3lt> |
Hi Neil, >> 1. when any source module has an error on load, Hugs stops in the middle >> of that module, being entirely useless until I comment out the offending >> lines, save and reload, or unload everything but the Prelude. > > I find that annoying too, and generally keep a separate WinHugs copy > open at all times to do :t commands when things break. I thought this > might be a big architectural change, or I would have suggested it. if it was haskell, one could just keep a list of successfully loaded modules, and reload only those after an error message. but even with Mark's functional c coding, c isn't haskell, so you might be right - being in c certainly keeps me from looking into it;-). I just thought I'd report it for the record, and for the brave folks who keep the innards of Hugs up to date. > that for beginners (esp those without loads of computer experience) if > you have this turned off then they get loads of issues with evaluating > code which is different to that which is saved. One term demonstrating > programming and watching people make this error will convince you this > should be the default of everything! I don't think so!-) I've been there with all kinds of other computing issues for beginners, and even non-beginners. yes, it is annoying if one spends time debugging non-bugs because of invisible version mismatch (meta-programming adds new levels to that kind of fun..). what I would like to see instead is winhugs changing colour or giving a message if the loaded version is not the newest version on disk (that is also more or less standard behaviour in good editors, I think). a gui ought to assist, not to dictate presumably better behaviour - beware of the paper clip:-) that way, beginners, teachers, and advanced programmers out of their depth have a visual reminder that they are not working with the newest version, but they remain in control (eg, I sometimes use hugs to experiment with the code I'm putting together in the editor, referring to definitions already tested and successfully loaded in the old Hugs session, and I tend to save the editor session before I switch windows; autoload forces me either to skip the save, or to interrupt my train of thought to edit the current fragment into something loadable). that said, having the option of automatic reload is probably useful, and many will just select it for themselves or for their students. but for many others, old habits die hard!-) > That said, its still just an option: > File / Options / Compile Time / Automatically Reload Modified Files or :set -A, which I missed. thanks, now switched off. one problem solved! claus