real can take on any possible rational value; again, this offers significantly better precision than, for example, float or double numbers in Java (which uses IEEE 754 ). The following simple Whiley program illustrates these data types in action: void System::main([string] args): i = 123456789101112131415161718 r = 1234567.192849103954720300939 out.println(str(i)) out.println(str(r)) This program