Erik de Castro Lopo wrote:
Vasili I. Galchin wrote:I am working with some existing code. "where/let" functions use the same name for function parameters as the outer function and hence there is a "shadow" warning from the compiler. To me it doesn't see totally unreasonable to code like this .... the downside is the nasty ghc warnings. Is there a coding consensus on this issue?I'm relatively new to Haskell, but I know that in imperative languages like C, a small percentage of "shadow" warnings areoften real bugs and hence always worth fixing if possible (sometimes the problem is in system header files and hence can't be fixed).In Haskell there is an easy way around this. Variables can be name a, a', a'' and so on. Since these aid in clarity without forcing you to think up new variable names, I would suggest that its a good idea to fix these warnings.
Speaking from experience it's good to fix all warnings, since otherwise there will be enough of them to cause a few "terminal pages" to scroll by when you compile and then there's a real danger of not noticing real errors. I'd pass '-Wall -Werror' to ghc to force myself to do this :-)
Also from experience, I get a good feeling about software that compiles without warnings. It suggests the author cares and is indicative of some level of quality.
/M -- Magnus Therning (OpenPGP: 0xAB4DFBA4) magnus@therning.org Jabber: magnus@therning.org http://therning.org/magnus identi.ca|twitter: magthe
signature.asc
Description: OpenPGP digital signature
_______________________________________________ Haskell-Cafe mailing list Haskell-Cafe@haskell.org http://www.haskell.org/mailman/listinfo/haskell-cafe