Soweit ich mich an das Programmieren erinnere, wurde mir beigebracht, Gleitkommazahlen nicht auf Gleichheit zu vergleichen. Beim Lesen der Programmierung in Lua über den Lua- number
Typ stellte ich Folgendes fest:
Der Zahlentyp repräsentiert reelle Zahlen (Gleitkommazahlen mit doppelter Genauigkeit). Lua hat keinen Integer-Typ, da er ihn nicht benötigt. Es gibt ein weit verbreitetes Missverständnis über Gleitkomma-Rechenfehler und einige Leute befürchten, dass selbst ein einfaches Inkrement mit Gleitkommazahlen seltsam werden kann. Tatsache ist, dass bei Verwendung eines Double zur Darstellung einer Ganzzahl überhaupt kein Rundungsfehler auftritt (es sei denn, die Zahl ist größer als 100.000.000.000.000). Insbesondere kann eine Lua-Zahl jede lange ganze Zahl ohne Rundungsprobleme darstellen. Darüber hinaus führen die meisten modernen CPUs Gleitkomma-Arithmetik so schnell wie (oder sogar schneller als) Ganzzahl-Arithmetik aus.
Gilt das für alle Sprachen? Grundsätzlich sind wir in der Ganzzahlarithmetik sicher, wenn wir nicht über das Gleitkomma im Doppel hinausgehen. Oder, um mehr mit dem Fragentitel übereinzustimmen, gibt es etwas Besonderes, das Lua mit seinem number
Typ macht, damit es sowohl als Ganzzahl- als auch als Gleitkommatyp gut funktioniert?