Thanks! Somehow I missed Text::Brew. Looks interesting.
I've found that scoring is a rather slow operation (relatively speaking), and so at the very least people should consider using memoization when they score or some other technique to reduce frequent scoring of identical terms.