[Haskell-beginners] How to divide a pair of Num values?

Costello, Roger L. costello at mitre.org
Wed Oct 24 11:01:34 CEST 2012


Hi Folks,

Here is a function that takes a pair of Integral
values and divides them:

divide_v1 :: Integral a => (a, a) -> a
divide_v1 (m, n) = (m + n) `div` 2

I invoke the function with a pair of Integral
values and it works as expected:

divide_v1 (1, 3)

Great. That's perfect if my numbers are always Integrals.

Here is a function that takes a pair of Fractional
values and divides them:

divide_v2 :: Fractional a => (a, a) -> a
divide_v2 (m, n) = (m + n) / 2

I invoke the function with a pair of Fractional
values and it works as expected:

divide_v2 (1.0, 3.0)

Great. That's perfect if my numbers are always Fractionals.

I would like a function that works regardless of whether the
numbers are Integrals or Fractionals:

divide_v3 :: Num a => (a, a) -> a
divide_v3 (m, n) = (m + n) ___ 2

What operator do I use for ___?

Thanks.

/Roger



More information about the Beginners mailing list