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 -- To UNSUBSCRIBE, email to [EMAIL PROTECTED] with a subject of "unsubscribe". Trouble? Contact [EMAIL PROTECTED]