|
Boost : |
From: Matthias Schabel (boost_at_[hidden])
Date: 2004-01-09 13:38:43
> Hmmm. Not sure about that. There is an implicit assumption there that
> all
> quantities represented are "absolute" - that is wrong since it would
> require that either "fahrenheit(32) + fahrenheit(32) ==
> fahrenheit(32)" or
> that such operations are not permitted. Neither option is correct.
Good point - I guess in reality there should be a distinction made
somewhere
between a value which represents, e.g., a temperature measurement and a
value which represents a temperature difference. This is getting
complicated...
> My gut feeling is that you need a convert_unit_relative and
> convert_unit_absolute - one that does what you used to do, and one that
> does what you want to do now (respectively).
I guess this sort of problem must have arisen in the date/time library
as well
since a time interval is conceptually different than a time point. It
may be that
we need to have two distinct types in the units library, one relative
and one
absolute, so that you could do things like
absolute = absolute + relative
relative = relative + relative
but not
absolute = absolute + absolute
Probably possible. Then again...AUUUGGHHH...sorry...
------------------------------------------------------------------------
---------------------------
Matthias Schabel, Ph.D.
Utah Center for Advanced Imaging Research
729 Arapeen Drive
Salt Lake City, UT 84108
801-587-9413 (work)
801-585-3592 (fax)
801-706-5760 (cell)
801-484-0811 (home)
mschabel at ucair med utah edu
Boost list run by bdawes at acm.org, gregod at cs.rpi.edu, cpdaniel at pacbell.net, john at johnmaddock.co.uk