Sorry for flooding. This JIRA issue is sort of turning more off topic for each post.. I hope you don't mind.
LUCENE-1016-clusterer.txt now contains a refactor of the Tanimoto similarity, it does the same thing, but with less messy code.
And as the filename hints, I thought it would be fun to demonstrate the similarity by adding a very simple two dimensional decision tree clusterer.
For the test I feed it with 17 news articles representing 3 news stories I got from Google news. Attached is also a graphviz diagram that shows the tree with the news stories clustered together. I did not look at how to draw the line between the clusters yet, but I could probably come up with something simple enough. Legend: floating numbers represents the distance between two children. The leafs are the actual articles, prefixed with new story identity and suffixed with news article identity.
(The clusterer sure needs optimization, use carrot instead. This is just me fooling aroung.)