Actually, I don't know if the method is the problem, but here's what I've
got....

a = 'stressed'
b = 'desserts'
a == b.reverse
=> true
words = File.open('american-english', 'r') {|f| f.read}.split.map {|w|
w.strip.downcase}
words.include? 'stressed'
=> true
words.include? 'desserts'
=> true
working = words.select {|w| w.length = 8}
working.include? 'stressed'
=> true
working.include? 'desserts'
=> true
palindrome = working.select {|w| w == w.reverse}
palindrome.empty?
=> true

It works for words of other lengths, though.