On Sun, Jan 20, 2019 at 12:10:13AM -0500, George Neuner wrote: > > As Ellen already mentioned, fixed width integers - although exact values - > have computational properties that are not shared with mathematical > integers. As soon as the computation overflows, all bets are off ... any > number of mathematical invariants may no longer hold.
So Algol 68 called the usual integer type "int" instead of "integer". > > The troubles with floating point are caused by the representation, but they > aren't limited by it. FP numbers are not simply "limited precision" > approximations of real numbers, but actually are a fuzzy range that only > contains the "limited precision" approximation, and you don't know where > within that range the actual value lies. > > FP math bears little resemblance to real math: > > * FP numbers are neither associative nor distributive > * even simple invariants like (A+B)-B = A or A+A = 2*A may not hold > * FP numbers don't necessarily have a multiplicative inverse: not all > A have a B= 1/A such that A*B = 1 > * FP numbers are not continuous: e.g., B > 0 doesn't mean A+B > A > > and there is plenty more. The so-called BigFloat implementations don't > change these properties - they simply push them out further away from the > programmer [who still can be bitten by problems]. And that's why I approve of the practice of calling floating point types "float" instead of "real". -- You received this message because you are subscribed to the Google Groups "Racket Users" group. To unsubscribe from this group and stop receiving emails from it, send an email to racket-users+unsubscr...@googlegroups.com. For more options, visit https://groups.google.com/d/optout.