On Monday, 30 May 2016 at 18:20:39 UTC, Andrei Alexandrescu wrote:

Please throw this hat into the ring as well: it should improve average search on large vocabulary dramatically.

https://dpaste.dzfl.pl/dc8dc6e1eb53

It uses a BM-inspired trick - once the last characters matched, if the match subsequently fails it needn't start from the next character in the haystack. The "skip" is computed lazily and in a separate function so as to keep the loop tight. All in all a routine worth a look. I wanted to write this for a long time. -- Andrei

Cool. So far, my experience with separate functions has been that they slow down the loop. But this might do the trick.

Reply via email to