Anadromes: Difference between revisions

Content added Content deleted
(add OCaml)
Line 763: Line 763:
sallets ↔ stellas</pre>
sallets ↔ stellas</pre>


=={{header|Ruby}}==
<syntaxhighlight lang="ruby">words = File.readlines("words.txt", chomp: true).reject{|word| word.size <= 6}
reversed_words = words.map(&:reverse)
reversables = (words & reversed_words).reject{|word| word == word.reverse}
res = reversables.uniq{|w| [w, w.reverse].sort}
res.each{|w| puts "#{w} - #{w.reverse}".center(20) }
</syntaxhighlight>

{{out}}
<pre>
amaroid - diorama
degener - reneged
deifier - reified
deliver - reviled
dessert - tressed
desserts - stressed
deviler - relived
dioramas - samaroid
gateman - nametag
leveler - relevel
pat-pat - tap-tap
redrawer - rewarder
reknits - stinker
relever - reveler
reliver - reviler
revotes - setover
sallets - stellas
</pre>
=={{header|Rust}}==
=={{header|Rust}}==
<syntaxhighlight lang="rust">use std::collections::BTreeSet;
<syntaxhighlight lang="rust">use std::collections::BTreeSet;
Line 792: Line 820:
Err(error) => eprintln!("{}", error),
Err(error) => eprintln!("{}", error),
}
}
}
}</syntaxhighlight>

{{out}}
<pre>
amaroid <-> diorama
amaroid <-> diorama
degener <-> reneged
degener <-> reneged