On Jan 28, 2007, at 13:01 , Dennis Buchmann wrote:

It should look like this:
        floor(j * (n / p2n))
where j is an Integer, n is the length of a list, therefore Integer too,
and p2n is 2^n.

When i use the former line in my Haskell code (pasted at the end of this mail),
i get the following error message:

qc.lhs:464:16:
    No instance for (RealFrac Int)
      arising from use of `floor' at qc.lhs:464:16-36

It's telling you you're trying to take the floor of an Int (not a type in class RealFrac, which would be Float or Double). This makes sense because everything there is in fact an Int ((^) is defined as taking things of class Integral (Integer, Int) and returning something in class Num, which in this case will be Int because it's used in an Int expression). In other words, floor is unnecessary.

--
brandon s. allbery    [linux,solaris,freebsd,perl]     [EMAIL PROTECTED]
system administrator [openafs,heimdal,too many hats] [EMAIL PROTECTED]
electrical and computer engineering, carnegie mellon university    KF8NH



_______________________________________________
Haskell-Cafe mailing list
Haskell-Cafe@haskell.org
http://www.haskell.org/mailman/listinfo/haskell-cafe

Reply via email to