Boost logo

Boost :

From: Paul Giaccone (paulg_at_[hidden])
Date: 2006-06-08 09:49:07

Carlo Wood wrote:
> On Thu, Jun 08, 2006 at 08:31:37AM +0100, Andy Little wrote:
>>> "Deane Yang" wrote
>>> Carlo Wood wrote:
>>>> English: meter per second
>>>> Dutch: meter per seconde
>>>> French: mtres par seconde
>>>> German: meter pro sekunde
>>>> Spanish: metro por segundo
>>>> I think that 'per' is as much english as 'divided by'.
>>>> People who know english won't be confused by it.
>>> I also vote for "per".
> I never "voted" for per, I just said that div and per are
> both English and one shouldn't worry about one being confusing
> while the other is not. The few language examples that were
> given are just to back that up for this particular case.
> I agree with Paul Giaccone that's it's just a red herring, actually.
> Sorry for the confusion.
> I'd prefer the full 'per'.
> What is 'mi'? Shouldn't you use the full english word everywhere?
> That is less confusing. You also don't write 'rec_mass::per_kg'.
> The only exception to the rule of abbreviation should be for
> the (SI?) units and the prefixes: nm, mm, km, kg, Pa, N, cd, etc.
> I'm not even sure if we want to abbreviate non-SI units:
> feet, calories, barrels, acres, inches, buckets...
> By the way - if you abbreviate kilo to k, and mili to m.
> Then what is the full list? (from
> yotta [Y] 1 000 000 000 000 000 000 000 000 = 10^24
> zetta [Z] 1 000 000 000 000 000 000 000 = 10^21
> exa [E] 1 000 000 000 000 000 000 = 10^18
> peta [P] 1 000 000 000 000 000 = 10^15
> tera [T] 1 000 000 000 000 = 10^12
> giga [G] 1 000 000 000 (a thousand millions = a billion)
> mega [M] 1 000 000 (a million)
> kilo [k] 1 000 (a thousand)
> hecto [h] 100 (a hundred)
> deca [da]10 (ten)
> 1
> deci [d] 0.1 (a tenth)
> centi [c] 0.01 (a hundredth)
> milli [m] 0.001 (a thousandth)
> micro [µ] 0.000 001 (a millionth)
> nano [n] 0.000 000 001 (a thousand millionth)
> pico [p] 0.000 000 000 001 = 10^-12
> femto [f] 0.000 000 000 000 001 = 10^-15
> atto [a] 0.000 000 000 000 000 001 = 10^-18
> zepto [z] 0.000 000 000 000 000 000 001 = 10^-21
> yocto [y] 0.000 000 000 000 000 000 000 001 = 10^-24
> I could agree with the more known ones:
> peta (P), tera (T), giga (G), mega (M), kilo (k), deci (d),
> centi (c), milli (m), nano (n), pico (p), femto (f)... but
> then again, that's just me (being familiar with those and
> not the others). I suppose you should support them all.
> I suppose that using 'u' as abbreviation for micro makes
> most sense (there isn't a 'mu' symbol in the C++ character
> set).
I think "mi" is meant to be "mile". The problem with imperial units is
that, unlike SI units, they do not have standard symbols (actually
abbreviations in the case of imperial units). So "mile" is often
abbreviated to "m" (which can be confused with "metre", of course), as
in "mph", and sometimes "mi", as in "London: 30 mi". Furthermore, the
abbreviations for some imperial units can be pluralised, so "inches" is
often abbreviated to "ins", something that is not allowed with SI units.
So perhaps it might better to spell non-metric units out in full, if
they are to be included, because they break a lot of the rules fixed for
SI units.

There are lots and lots of non-SI units... how many would it be useful
to include? CGS units (ergs, dynes)? Nautical units (knots, fathoms)?
Old units (leagues, cubits)? Units used outside the US and UK (arpents,
taels)? Units that apply to only to particular commodities (carats,
steres, jeroboams)? You'll find a very long list at, and even
that is not complete (no doubt there are longer lists elsewhere on the
Internet). It would be fun to include all of these, but maybe not worth
the effort if they were never used. Then again, they would extend the
usability of the library.

Yes, "u" is a conventional way of representing "mu" when the Greek
letter is not available - you see "ug" quite often as the symbol for
"microgram" on bottles of vitamins and medicines. I don't know whether
this is an SI standard, but it is certainly commonly used.

A few other thoughts...

Centi-, deci-, deca- and hecto- are not officially part of SI
nomenclature. Although "centimetre" is in very common everyday usage,
and others such as "hectolitre" are sometimes seen, units such as
"deciohm", "hectovolt" and "decapascal" have no official usage. So
should the powers 10^n where n is not a multiple of 3 be allowed or not?
Maybe it should be for metres but not for any of the other units, or
maybe there could be a "strict" flag that turned these unofficial forms
off or on.

Does the second officially take any prefix? Can you talk about a
"megasecond", or would you convert this to the more usual "11 days, 13
hours, 46 minutes and 40 seconds"? Indeed, does the library have a
mechanism for doing this sort of breakdown of time? I suspect not, as
time is not base 10.

Is the litre officially an SI unit? I think I remember reading somewhere
that either it is not, or it was not but has now been included. In any
case, it's equivalent to 1/1000 m^3, but this often looks odd when
referring to liquid, and petrol is sold in litres all over Europe, not
cubic metres.

The UK tends to use "gram" (like the US) these days rather than
"gramme", which is a bit old-fashioned. But, again, you might want to
support both spellings if you give a UK/US spellings option.

It looks like there is a large number of things to consider in this
library. I hope the ever-growing wish list doesn't end up pushing the
release date of the library back for ever or causing it to end up being
rejected just because there is a host of extra requirements that it does
not yet fulfil.


Boost list run by bdawes at, gregod at, cpdaniel at, john at