Ninguna instancia para (flotante int)

Estoy aprendiendo Haskell. He creado una función que devuelve la tabla de multiplicar hasta 'n' en la base 'b'. Los números se rellenan con los dígitos 'w'. Como último paso, quiero calcular 'w' automáticamente. ¿Por qué esto no se compila?

-- Number of digits needed for the multiplication table n*n in base 'base'
nOfDg :: Int -> Int-> Int 
nOfDg n base = 1 + floor ( logBase base (n*n)) 

error:

No instance for (Floating Int)
     arising from a use of `logBase' at C:\haskel\dgnum.hs:4:24-38
   Possible fix: add an instance declaration for (Floating Int)
   In the first argument of `floor', namely `(logBase b (n * n))'
   In the second argument of `(+)', namely `floor (logBase b (n * n))'
   In the expression: 1 + floor (logBase b (n * n))

Respuestas a la pregunta(3)

Su respuesta a la pregunta