「x == x + 1」解答篇

前回までのあらすじ:

Pythonでは4文字でこういうxが作れる」

今回のあらすじ:

「っていうかたいがいの言語で4文字で作れるな」

まずJavaScriptFirebugで:

>>> var x = 1e16;
>>> x == x + 1;
true

つぎRubyirbで:

irb(main):001:0> x = 1e16
=> 1.0e+016
irb(main):002:0> x == x + 1
=> true

Perl

>perl -e "$x = 1e16; print $x == $x + 1;"
1

PHP:

>php -r "$x = 1e16; print ($x == $x + 1);"
1

Haskell:

Prelude> 1e16 == 1e16 + 1
True

Scheme:

> (= (+ 1e16 1) 1e16)
#t

Emacs Lisp:

(= (+ 1e16 1) 1e16) ;-> t

R:

> 1e16 == 1e16 + 1
[1] TRUE

電車が駅に着いたのでここでおしまい。途中からプログラミングうんぬんより僕のノートパソコンに入っている処理系を探す作業になってしまったが、ようするに多くの言語で1e16はx == x + 1を満たすxだということ。