At 17:53 +0100 3/10/05, Thomas Sandlaß wrote: >'Co' means together like in coproduction. And 'contra' is the opposite >as in counterproductive. With instanciating parametric types the question >arises how a subtype relation between instanciating types propagates >to the template. E.g with Int <: Num, covariance would result in >Array[Int] <: Array[Num]. Referential classes are actually quite difficult >because upon write they are contravariant and covariant when read! >So a third case of uncomparable types is needed as well, or it is the default >if nothing else is specified.
A word of caution: Just as in "vector operators" had their names changed to pacify the mathematicians - thank you - there is a conflict in terms. Covariant and contravariant tensors are the meat of Einstein's formulation of relativity. It all has to do with transformations being in the same direction or the opposite direction as the coordinate differentials. Perhaps there is some similarity. Einstein's presentation is a whole lot easier to understand than the one above. -- --> Marriage and kilo are troubled words. Turmoil results when centuries-old usage is altered in specialized jargon <--.