The issue here is not whether or not the code is pretty or elegant, but whether or not I get correct execution of what I have, which is a correct statement of what I want (even if not the prettiest or most lint free), and I don't. There are lots of ways to work around the problem, but that doesn't, unfortunately, make the problem go away, and it is sure to appear elsewhere as the program is extended, which it will be.

It would appear that the real issue here is that someone with resources I don't have needs to dig into the compilers--it should not be necessary to use trial and error to find an alternate writing of code that is legal and correct (regardless of the aesthetics) but is incorrectly compiled. For the time being, I will use native compilation and hope that someone can find and fix the error so that I can use the speed advantage of optimization.

Best,

Murray Gross



On Tue, 6 Jan 2009, Neil Mitchell wrote:

Hi

gTst3 right left = if (lr > ll)  then  False else True
                        where lr = length (right ! 2)
                              ll = length (left ! 2)

Running this code over HLint (http://www.cs.york.ac.uk/~ndm/hlint) says:

Example.hs:8:1: Error: Redundant if
Found:
 if (lr > ll) then False else True
Why not:
 not (lr > ll)

Making that change and running it again gives:

Example.hs:8:1: Error: Use <=
Found:
 not (lr > ll)
Why not:
 lr <= ll

Which ends up with something similar to what you came up with.
However, if we take your final answer:

gTst3 right left = (lr <= ll)
                        where lr = length (right ! 2)
                              ll = length (left ! 2)

We get:

Example.hs:8:1: Warning: Redundant brackets
Found:
 (lr <= ll)
Why not:
 lr <= ll

Leaving us with the HLint 1.0 compliant (TM) :

gTst3 right left = lr <= ll
                        where lr = length (right ! 2)
                              ll = length (left ! 2)

Thanks

Neil
_______________________________________________
Haskell-Cafe mailing list
[email protected]
http://www.haskell.org/mailman/listinfo/haskell-cafe

_______________________________________________
Haskell-Cafe mailing list
[email protected]
http://www.haskell.org/mailman/listinfo/haskell-cafe

Reply via email to