It's not different rounding modes, but different floating point formats. Google is doing something very weird that is also base 10 related. Not sure about TCL.
$ tclsh
% puts $tcl_version
8.6
% expr "9999999999999999.0-9999999999999998.0"
2.0