Cada vez que escribo una función usando dobles y enteros, encuentro este problema donde constantemente tengo que usar 'fromIntegral' en todas partes en mi función. Por ejemplo:Uso excesivo deIntegral en Haskell
import Data.List
roundDouble
:: Double
-> Int
-> Double
roundDouble x acc = fromIntegral (round $ x * 10 ** fromIntegral acc)/10 ** fromIntegral acc
¿Hay alguna manera más fácil de escribir esto? (Sé que puede haber formas más fáciles de redondeo un número y si hay por favor hágamelo saber! Sin embargo, estoy interesado principalmente en la forma de evitar el uso de tantos 'fromIntegrals'.)
Gracias, Ash
No estaba al tanto de 'encendido', ¡gracias por señalarlo! –
Y su variante: http://stackoverflow.com/questions/3453608/overuse-of-fromintegral-in-haskell/3458922#3458922 – sastanin
El tipo de (/.) Es (Integral a, Fraccional b, Integral a1) = > a -> a1 -> b mientras que el tipo de (/) 'on' fromIntegral es (Fraccional b, Integral a) => a -> a -> b. Si necesita el tipo más general, no es apropiado. – Peaker