# Is Congruence the right term?

**URL:** <https://www.ruby-forum.com/t/is-congruence-the-right-term/169456>\
**Category:** Ruby\
**Created:** [June 3, 2009, 11:06pm UTC](https://www.ruby-forum.com/t/is-congruence-the-right-term/169456 "2009-06-03T23:06:40Z")\
**Posts on this page:** 2\
**Page:** 1

<div class="post-metadata">

**Author:** ![Xeno\_C](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/x/958977/32.png) [@Xeno\_C](https://www.ruby-forum.com/u/Xeno_C)\
**Post date:** [June 3, 2009, 11:06pm UTC](https://www.ruby-forum.com/t/is-congruence-the-right-term/169456/1 "2009-06-03T23:06:40Z")

</div>

Congruence in math has the implication that things are basically like  
even if  
they have different aspects or proportions somehow. I want to use the  
term for  
things like Ruby which tend to do the same things the same way across  
classes,  
unlike similarly respectable languages (I consider Perl and Python  
similar, but  
wouldn’t want to fight about that) which have less of a tendency to  
carry such  
similarities.

Is it appropriate to use the word ‘congruence’ for this? If not it  
would be  
very nice if there were a word to use. ‘similar’ is too general, and it  
would  
be unfortunate to have to come up with a word like ‘organic’, as the  
food people  
did which might also spark unfortunate controversy.

To me, if x is a string, and y is of class Blek, if they both have  
method  
‘length’, then in that way x.length and y.length would constitute some  
aspect of  
congruence, and if both class A had a method xyz and B had a class that  
yielded  
similar results, then they would have in that method a congruent aspect,  
especially if the method took the same kinds of arguments.

xc

---

<div class="post-metadata">

**Author:** ![Xeno\_C](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/x/958977/32.png) [@Xeno\_C](https://www.ruby-forum.com/u/Xeno_C)\
**Post date:** [June 4, 2009, 3:45am UTC](https://www.ruby-forum.com/t/is-congruence-the-right-term/169456/2 "2009-06-04T03:45:58Z")

</div>

is [Duck typing - Wikipedia](http://en.wikipedia.org/wiki/Duck_Type) the term you’re looking for?

On Jun 3, 5:05 pm, Xeno C. [removed\_email\_address@domain.invalid](mailto:removed_email_address@domain.invalid) wrote:

> Congruence in math has the implication that things are basically like even if  
> they have different aspects or proportions somehow. I want to use the term for  
> things like Ruby which tend to do the same things the same way across classes,  
> unlike similarly respectable languages (I consider Perl and Python similar, but  
> wouldn’t want to fight about that) which have less of a tendency to carry such  
> similarities.
> 
> Is it appropriate to use the word ‘congruence’ for this? If not it would be  
> very nice if there were a word to use. ‘similar’ is too general, and it would  
> be unfortunate to have to come up with a word like ‘organic’, as the food people
