5 ms·
I wonder whether the author also hates the 0 and 1 elements of natural numbers. Since they have the same flaw of having weird, special semantics that all other
by skgoa 8y ago
I wonder whether the author also hates the 0 and 1 elements of natural numbers. Since they have the same flaw of having weird, special semantics that all other other numbers don't share. In fact 0 is not even a number, but a placeholder for the concept of the absence of a number. Just like NULL.
- BlackFly 8y agoI can assure you that the number 0 in 0℃ is a number and not the absence of temperature. But other than that, excellent point about the wonkiness of special values.
- rusk 8y ago> the number 0 in 0℃ is a number If we're going to get pedantic ... 0 in this case is an offset. The number is what's behind it: The point at which water freezes (aka 273 °K). In this case 0 indicates the absence of any offset.
- paulhilbert 8y agoI wonder why this gets downvoted - seems pretty reasonable to me...
- pjc50 8y agoIt's a rather odd argument and it falls apart as soon as you ask about 0 Kelvin.
- thaumasiotes 8y ago> it falls apart as soon as you ask about 0 Kelvin Huh? The whole point of Kelvins is that their zero point is an actual 0 value. That's why Kelvins are a unit and °C aren't. Q: An object's temperature is 20°C. The object's temperature increases by 10%. What is the new temperature of the object? A: 49°C.
- peteretep 8y ago> That's why Kelvins are a unit and °C aren't Could I ask that you update Wikipedia with your discovery? Sadly the page appears to be erroneously using the word "unit" all over the place! https://en.wikipedia.org/wiki/Celsius https://en.wikipedia.org/wiki/Celsius Also, NIST might benefit from your guidance: https://physics.nist.gov/cuu/Units/kelvin.html https://physics.nist.gov/cuu/Units/kelvin.html
- thaumasiotes 8y agoIt's already there, if you know enough to recognize it: > The degree Celsius (°C) can refer to a specific temperature on the Celsius scale or a unit to indicate a difference between two temperatures In other words, you can add a quantity of °C to a temperature value and you'll get another temperature value. But you can't measure a temperature in °C. Compare how, for example, the python datetime library uses a datetime type and a timedelta type. A datetime plus a timedelta is a datetime. datetimes refer to points in time, and timedeltas don't. °C measures a temperature delta, but not a temperature.
- peteretep 8y ago> It's already there, if you know enough to recognize it "As an SI derived unit", "or a unit to indicate", "the unit was called" Three mentions of it being a unit in the first paragraph, alone. I understand the point being made; the conclusion that "celsius is not a unit" is bogus, however, by any common definition, including NIST's. In a now-deleted comment, you linked to a Wikipedia page on Dimensional Analysis, which includes the sentence "to convert from units of Fahrenheit to units of Celsius".
- deleted 8y ago[deleted]
- rusk 8y agoExcept when you take into account that 0 Kelvin actually is theoretically "nothing" with regards to temperature. It's not a floating point, it's an absolute.
- BlackFly 8y agoI imagine because the post is not pedantic but is just wrong. If you want to be pedantic and correct, the symbol 0 represents a real number, an integer, and other numbers. The symbol 0 is not a cardinal (counting) number. Some people consider the natural numbers to be either the cardinal numbers or the whole numbers which include 0. So some people consider 0 to not be a natural number. As a mathematical entity it doesn't represent the absence of anything. It is just a symbol that has certain properties associated with it. There isn't a hole in the real number line where 0 should be: there is a number there. It isn't pedantic to insist that 0 isn't a number, it is equivocal to do so. In most contexts it does not need to be treated like a special value. Temperature measured in degrees is an example where you don't need to treat 0 specially, at least not more than other values...
- Zarel 8y agoPsst, in 1968, we renamed "degrees Kelvin" to "kelvins", and "°K" to "K", to make it clear that it was an absolute and not relative scale.
- TheOtherHobbes 8y agoThat's exactly the point the author isn't making - which is that there should be an explicit distinction between Exists But Holds No Value and Does Not Exist. 0 is neither. It's clearly a number which can be used in arithmetic and defines a specific integer quantity. (Unless you think 0 is identical to NaN...) The problem is that in some languages it's used for either or both of the above logical definitions, when it shouldn't be used for either.
- pjc50 8y agoThey have all the same semantics as regular numbers? They all derive naturally from the Peano axioms. You may be thinking of NaN.
- boomlinde 8y agoNo, 0 is definitely a number.
- giornogiovanna 8y agoZero's behavior is totally consistent with the other numbers, though - it doesn't break associativity, commutativity, or any of the other stuff you'd expect. On the other hand, NULL takes every type I've ever written and adds an instance whose behavior with every function is, at best, to crash my program, and at worst, completely undefined. Its behavior is not at all consistent with the other instances.
- AnimalMuppet 8y ago0 breaks division, though...