[Python-ideas] the Quantity pattern

Darren Dale dsdale24 at gmail.com
Wed Mar 3 03:02:31 CET 2010


On Tue, Mar 2, 2010 at 2:37 PM, George Sakkis <george.sakkis at gmail.com> wrote:
> On Tue, Mar 2, 2010 at 8:17 PM, Robert Kern <robert.kern at gmail.com> wrote:
>> On 2010-03-02 12:35 PM, Bill Janssen wrote:
>>>
>>> I was looking at Martin Fowler's Quantity pattern earlier.
>>>
>>> http://martinfowler.com/ap2/quantity.html
>>>
>>> I remember writing this up as an idea for Fortran back in the early
>>> 80's, only to find a CACM paper from 1978 exploring the idea:
>>> "Incorporation of Units into Programming Languages", Karr&  Loveman, May
>>> 1978.
>>>
>>> But it would still be a cool idea for Python.  Perhaps it's already
>>> there and I haven't noticed?
>>
>> Tons of implementations (in no particular order):
>>
>> http://pypi.python.org/pypi/quantities/
>> http://pypi.python.org/pypi/Unum/
>> http://pypi.python.org/pypi/magnitude/
>> http://pypi.python.org/pypi/units/
>> http://pypi.python.org/pypi/ScientificPython/
>> http://pypi.python.org/pypi/SciMath/
>>
>> And quite a few more that are part of other packages or otherwise not on
>> PyPI. It's ridiculously easy to write something that what people think are
>> the common cases and so everyone does. It's a lot harder to write something
>> that robustly handles what are actually common cases (absolute temperature
>> scales, logarithmic scales, etc.).
>
> One more: http://pypi.python.org/pypi/piquant/
>
> I can't comment on its robustness and performance but as far as
> readability goes, Unum seems the best of the bunch.

I am the developer of the Quantities package. The tutorial at
http://packages.python.org/quantities/user/tutorial.html recommends
importing the units and constants into a namespace, but aside from
that, the syntax seems very similar to Unum. However, quantities
depends on numpy.

Darren



More information about the Python-ideas mailing list