On Fri, Jan 27, 2012 at 11:05 AM, Garthy D
<garthy_lmkltybr / entropicsoftware.com> wrote:

> To remain wilfully
> ignorant of these systems, and then cry "pathetic", is disingenuous. To
> subsequently push for language changes based on such a shaky foundation is
> ludicrous.

Regardless of the problems and advantages of the underlying
representation, and even in full knowledge of it, it is not pathetic
to think a modern language, one that seeks to please humans before
computers, should be able to recognise the truth of (1.1 - 1.0 ==
0.1).  I do agree that wilful ignorance is probably never a good
thing, but I give Mr Intransition the benefit of the doubt.  It was
advertised as a "rant", not the sum of his knowledge.

One possible change that has been mentioned at least a couple of times is:

   1.1 - 1.0 == 0.1
      # -> true, using programmer-friendly representation like BigDecimal

   1.1f - 1.0f == 0.1f
      # -> false; the programmer has explicitly chosen to use
computer-friendly floats

Of course, with coercion, the second example could simply be:
    1.1f - 1.0 == 0.1         # -> false

Such a language change could be debated and rejected, but it is not
self-evidently on shaky foundations and it is certainly not ludicrous.

There may be difficulties associated with designing and implementing
that particular idea, but it appear to me to be quite consistent with
Ruby as a whole.

Gavin