I have had much the same experience as you. The library seems to hold a lot of promise and is from what I can see very sophisticated. But I had the same problems with the documentation and examples. I struggled for some time to figure out the difference between units and base units (and dimensions and base dimensions) and when you would use each.

If someone could put together a decent tutorial I'm sure I would use this library quite frequently.



-----Original Message-----
From: Robert Ramey [ramey@rrsd.com]
Sent: Sunday, September 15, 2013 01:14 PM Eastern Standard Time
To: boost-users@lists.boost.org
Subject: [Boost-users] [units]

I have an urgent and definite need for the functionality which boost.units
is meant to provide.  The concept is quite simple so I had expected it to be
relatively easy to use. I had anticipated spending a few hours perusing the
documentation and examples, adding code to my application and moving on.
T'was not to be. I'm now on day 3 (or 4?) trying to figure this thing out.

The main hurdle is that the documentation is indecipherable.

There are a number of templated classes defined which depend upon each
other. I expect to find a page for each of the templates along with a
description of what the template arguments should be.  (Ideally these should
be backed up with concept checking classes).  Ideally there would be a small
example showing how one would use these templates.

It seems that the library is layered from low level ideas to higher level
ones.  The documentation touches on this - but its not really formalized.

Theres a reference section which includes scores of things like base_units
types for wide variety of units - but no where is there any indication how
these should be used - not even in the examples are they used.

There is a concept of "system" (of dimensions?) and the idea of mixing units
from different systems and the idea that the same dimension (eg length) have
multiple renderings in the system (nautical vs metric).

I realize I've likely got this wrong and I'm not asking for anyone to
explain this to me here - my point is that what should be very simple is
incredibly confusing. I still haven't figured out whether it's only the
documentation which is incomplete or if it is the actual logical design of
the library itself is what's flawed.  I'm still working on this.

I don't remember much traffic on this list regarding this library and if I
google information on boost C++ units library I don't get a whole lot of
hits.  This could mean that that the library is so easy to use no one ever
needs to ask about it or it could be that almost no one every uses it.  In
Boost we don't gather statistics on usage by library so I don't which of
these it might be. So my question is: Has anyone had good success with this
library?  How much effort did it take? What did you have to do to make it
work. I would be curious about any other user feed back in these questions.

Robert Ramey



_______________________________________________
Boost-users mailing list
Boost-users@lists.boost.org
http://lists.boost.org/mailman/listinfo.cgi/boost-users




IMPORTANT: The information contained in this email and/or its attachments is confidential. If you are not the intended recipient, please notify the sender immediately by reply and immediately delete this message and all its attachments. Any review, use, reproduction, disclosure or dissemination of this message or any attachment by an unintended recipient is strictly prohibited. Neither this message nor any attachment is intended as or should be construed as an offer, solicitation or recommendation to buy or sell any security or other financial instrument. Neither the sender, his or her employer nor any of their respective affiliates makes any warranties as to the completeness or accuracy of any of the information contained herein or that this message or any of its attachments is free of viruses.