> On Fri, Jun 3, 2022 at 7:21 AM David Kastrup <d...@gnu.org> wrote: > Programming languages don't offer different types for distances, > positions, weights, forces, whatnot. It's safe to say that programming languages don't typically don't offer much in the way of types, they do however usually allow you to define your own types and encourage you to do that to ensure type safety and code clarity.
> When I equate various amounts of > power, the numbers don't demand that I get every part of > > 1 kg m²/s² = 1 V A s > > signed off by the compiler. I can rearrange terms perfectly well from > > a + b - c = a - c + b = (-c) + b + a > > without worrying about order of execution to make sure that every > intermediate term has a well-defined physical meaning. Well this isn't even true of numbers in typical programming languages. 1. your rearrangement might be silently ignored by the programming language because it doesn't ensure an order of evaluation. 2. your rearrangement might change the value of the result or give undefined behaviour. > Frankly, that's academic. It reminds me of the excessive amount of > energy placed into keeping the mathematics(!) of location vectors and > difference vectors separate. Location vectors and Difference vectors are not kept separate as far as I can tell. Affine space keeps points separate from differences of points which are vectors. So does common parlance for places/distances and time points/durations. Paris is not a distance and a week is not a time point. Immanuel -- -- A man must either resolve to point out nothing new or to become a slave to defend it. -- Sir Isaac Newton