[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Re: RFS: etl -- Voria Extended Class and Template Library



On Wed, 2005-11-30 at 01:07 -0500, Justin Pryzby wrote:
> On Wed, Nov 30, 2005 at 01:39:28PM +0800, Paul Wise wrote:
> 
> > Voria ETL is a multi-platform class and template library designed to
> > complement and supplement the C++ STL.
>   ^^^^^^^^^^     ^^^^^^^^^^
> 
> What do they mean?  I'm halfway serious .. I know in math class
> complement is 90deg and supplement is 180deg.
> 
> Is there a nonmath interpretation to those words, and, if so, is it
> related to the math bit?

Here is my impression (NOT a dictionary definition!!):

To complement means to provide additional features which
balance out some other set of features. For example
one can say that the car has "superior suspension,
complemented by comfortable seating, so it is
a pleasure to drive, even on rough terrain".

The meaning is that the two kinds of vibration
buffering work together additively to provide
even better buffering: note that some systems
will introduce positive feedback and actually
amplify vibration when used together.

On the other hand "supplement" just means "in addition to".
We often hear that we can take "Vitamin Supplements" to
increase our intake of vitamins essential to good health,
particularly if we usually live on BigMacs :)

In the case of ETL, the intent of 'supplement' is 
simply 'adding new datatypes and functions'. The intent
of 'compliment' is 'which combine well with the existing
types and functions'.

The 'math' meanings are indeed related: 90deg is the
complement because on a 2D surface given one line,
a line at the complementary angle combines to allow
a coordinate mapping of the whole space, therefore
this line 'complements' the first one with respect
to the space.

On the other hand 'supplement' as 180 deg is much weaker
since it only extends an interval to a line, allowing
you to extend linear measurements .. but still not
cover the whole surface.

Complement, as in 'bitwise complement' has as similar
meaning: there is a duality, and the complement is the
dual concept. Complement therefore indicates 'completing
a part to form the whole' by adding another part.

So crudely one might even say 'complement' implies
completion, whereas 'supplement' implies enrichment.
In particular, complementing does not add anything 
new conceptually, the complement was already implicit.

-- 
John Skaller <skaller at users dot sf dot net>
Felix, successor to C++: http://felix.sf.net



Reply to: