<br>FWIW, I took what I believe to have been the 2nd generation of this code, and put some of my own spin on it - mostly making it pass pylint, changing the __init__ arguments to be a little more intuitive (to me), and expanding the tests a bit.<br>
<br>It's at <a href="http://stromberg.dnsalias.org/svn/bloom-filter/trunk/">http://stromberg.dnsalias.org/svn/bloom-filter/trunk/</a><br><br>I'm using it in backshift to detect hardlinks in potentially-huge filesystems - so far, it seems to be working great.<br>
<br><div class="gmail_quote">On Fri, Jun 3, 2011 at 1:17 PM, Raymond Hettinger <span dir="ltr"><<a href="mailto:python@rcn.com">python@rcn.com</a>></span> wrote:<br><blockquote class="gmail_quote" style="margin: 0pt 0pt 0pt 0.8ex; border-left: 1px solid rgb(204, 204, 204); padding-left: 1ex;">
Thanks for all the feedback on the earlier post.<br>
<br>
I've updated the recipe to use a cleaner API, simpler code,<br>
more easily subclassable, and with optional optimizations<br>
for better cache utilization and speed:<br>
<br>
 <a href="http://code.activestate.com/recipes/577684-bloom-filter/" target="_blank">http://code.activestate.com/recipes/577684-bloom-filter/</a><br>
<br>
<br>
Raymond<br>
<br>
----------------------<br>
follow my python tips and recipes on twitter: @raymondh<br>
<font color="#888888"><br>
<br>
--<br>
<a href="http://mail.python.org/mailman/listinfo/python-list" target="_blank">http://mail.python.org/mailman/listinfo/python-list</a><br>
</font></blockquote></div><br>