C++ Logo

std-proposals

Advanced search

Re: [std-proposals] On the standardization of mp-units P3045R1

From: Sebastian Wittmeier <wittmeier_at_[hidden]>
Date: Wed, 19 Jun 2024 00:38:23 +0200
Hi Lorand,   it is good to know, how one reaches some value mathematically. As you pointed out, where it comes from.   However, there are use cases, where that does not happen.     Example:   A "climate scientist journalist" just reads in a survey file, what researches believe an expected temperature rise::   From 100 climate scientists 5 believe in < 1.5°C 20 believe in 1.5-2.0°C 30 believe in 2.0-3.0°C 60 believe in 3.0°-4.0C 5 believe in >4.0°C   Now the person wants to store those results in C++, do some statistics (median, average, percentiles) and output the results for countries using Fahrenheit.   The step for getting to those numbers by the difference of two absolute temperatures was done by the original researchers. It is lost, when just reading in the results from the survey. Now it is just values, which have to be interpreted as °C difference.   The unit library has to read in from the survey file and then translate the temperature differences into Fahrenheit.   And there should be no easy possibility to introduce a bug by using an absolute temperature instead of a temperature difference, which would happen, if one uses deg_C as unit - the only Celsius temperature unit, which is available.   Not everybody thinks about the difference between quantity and quantity points, when trying to apply an API for the first time without reading the documentation, even physicists.   -----Ursprüngliche Nachricht----- Von:Lorand Szollosi via Std-Proposals <std-proposals_at_[hidden]> Gesendet:Di 18.06.2024 23:40 Betreff:Re: [std-proposals] On the standardization of mp-units P3045R1 An:std-proposals_at_[hidden]; CC:Lorand Szollosi <szollosi.lorand_at_[hidden]>; Anthony Williams <anthony_at_[hidden]>; Johel Ernesto Guerrero Peña <johelegp_at_[hidden]>; Chip Hogg <chogg_at_[hidden]>;  The 1.5 degrees “increase” has to come from somewhere. It’s actually a difference: temp1 - temp0. That is likely written somewhere in the code (unless it’s deserialized). There were two values and we took the difference. And that’s exactly how I’d expect it to work.

Received on 2024-06-18 22:38:26