signature MLTON_REAL =
sig
type t
val fromWord: word > t
val fromLargeWord: LargeWord.word > t
val toWord: IEEEReal.rounding_mode > t > word
val toLargeWord: IEEEReal.rounding_mode > t > LargeWord.word
end

type t
the type of reals. For MLton.LargeReal this is LargeReal.real, for MLton.Real this is Real.real, for MLton.Real32 this is Real32.real, for MLton.Real64 this is Real64.real.

fromWord w

fromLargeWord w
convert the word w to a real value. If the value of w is larger than (the appropriate) REAL.maxFinite, then infinity is returned. If w cannot be exactly represented as a real value, then the current rounding mode is used to determine the resulting value.

toWord mode r

toLargeWord mode r
convert the argument r to a word type using the specified rounding mode. They raise Overflow if the result is not representable, in particular, if r is an infinity. They raise Domain if r is NaN.

MLton.Real32.castFromWord w

MLton.Real64.castFromWord w
convert the argument w to a real type as a bitwise cast.

MLton.Real32.castToWord r

MLton.Real64.castToWord r
convert the argument r to a word type as a bitwise cast.