"Strong typing vs. strong testing"

Tim Bradshaw tfb at tfeb.org
Tue Sep 28 16:55:26 CEST 2010

On 2010-09-28 14:39:27 +0100, Malcolm McLean said:

> he problem is that if you allow expressions rather than terms then
> the experssions can get arbitrarily complex. sqrt(1 inch + 1 Second),
> for instance.

I can't imagine a context where 1 inch + 1 second would not be an 
error, so this is a slightly odd example.  Indeed I think that in 
dimensional analysis summing (or comparing) things with different 
dimensions is always an error.

> On the other hand sqrt(4 inches^2) is quite well defined. The question
> is whether to allow sqrt(1 inch). It means using rationals rather than
> integers for unit superscripts.

There's a large existing body of knowledge on dimensional analysis 
(it's a very important tool for physics, for instance), and obviously 
the answer is to do whatever it does.  Raising to any power is fine, I 
think (but transcendental functions, for instance, are never fine, 
because they are equivalent to summing things with different 
dimensions, which is obvious if you think about the Taylor expansion of 
a transcendental function).


More information about the Python-list mailing list