datatype number = Int of int | Real of real fun toReal (Int i) = Real (real i) | toReal (Real r) = Real r fun addNumbers (Int a) (Int b) = Int (a+b) | addNumbers nb1 nb2 = let val (Real r1) = toReal nb1 val (Real r2) = toReal nb2 in Real (r1+r2) end val a = Int 10 val b = Real 15.0