# Programming-Idioms

New implementation

Be concise.

Be useful.

All contributions dictatorially edited by webmasters to match personal tastes.

Please try to avoid dependencies to third-party libraries and frameworks.

Other implementations
`//no code here: see comments`
```use utf8;
use Test::More;```
```my @strings = ('ᾲ στο διάολο', 'ὰι στο διάολο', 'Ὰͅ ΣΤΟ ΔΙΆΟΛΟ', 'ᾺΙ ΣΤΟ ΔΙΆΟΛΟ');
my @indices = (
[0,1], [0,2], [0,3],
[1,0], [1,2], [1,3],
[2,0], [2,1], [2,3],
[3,0], [3,1], [3,2]
);
for my \$tuple (@indices) {
ok \$strings[\$tuple->[0]] =~ qr"\Q\$strings[\$tuple->[1]]"i;
}
done_testing;```
`import itertools`
```strings = ['ᾲ στο διάολο',
'ὰι στο διάολο',
'Ὰͅ ΣΤΟ ΔΙΆΟΛΟ',
'ᾺΙ ΣΤΟ ΔΙΆΟΛΟ']

for a, b in itertools.combinations(strings, 2):
print(a, b, a.casefold() == b.casefold())
```
```strings = ['ᾲ στο διάολο', 'ὰι στο διάολο', 'Ὰͅ ΣΤΟ ΔΙΆΟΛΟ', 'ᾺΙ ΣΤΟ ΔΙΆΟΛΟ']

strings.combination(2){|a,b| puts "#{a} equals #{b}: #{a.casecmp?(b)}" }```
`use itertools::Itertools;`
```for x in strings
.iter()
.combinations(2)
.filter(|x| x[0].to_lowercase() == x[1].to_lowercase())
{
println!("{:?} == {:?}", x[0], x[1])
}```