The future of code search is not regex – 100x faster than ripgrep
50 points by neogoose 7 hours ago | 32 comments

kristopolous 6 hours ago
I ran across this fascinating tool a few days ago researching embedding models on hugging face.

Advertised as "ColGREP Semantic code search for your terminal and your coding agents",

I haven't put it in any harness yet but I probably should.

https://github.com/lightonai/next-plaid/tree/main/colgrep

I've also tried astgrep (also known as sg) but llms really mess up on them. I think you'd need to fine tune.

If anyone has cracked that case I'd love to hear about it

reply
wiseowise 4 hours ago
The future is lack of scrolling on mobile, and scanning getting stuck, apparently.
reply
narinciye 2 hours ago
You don't miss much, don't worry, it also looks horrible on desktop.
reply
austinjp 2 hours ago
To save people the digging, here's the git repo:

https://github.com/dmtrKovalenko/fff.nvim

"FFF stands for freakin fast fuzzy file finder (pick 3) and it is an opinionated fuzzy file picker for your AI agent and Neovim. Just for file search, but we do the file search really fff well.

FFF is a tool for grepping, fuzzy file matching, globbing, and multigrepping with a strong focus on performance and useful search results. For humans - provides an unbelievable typo-resistant experience, for AI agents - implements the fastest file search with additional free memory suggesting the best search results based on various factors like frecency, git status, file size, definition matches, and more."

reply
genewitch 5 hours ago
considering that ripgrep has marginal overhead over just reading the files to /dev/null, how exactly does this achieve 100x speedup?

I have a lot of use for something that can search ~1GB of text "instantly", but so far nothing beats rg/ag after the data has been moved into RAM.

reply
anilakar 5 hours ago
The trick to optimization is not "doing faster" but "doing less". I already feel rg is missing a ton of results I want to see because it has a very large ignore list by default.
reply
Yokohiii 2 hours ago
The crate says it uses SIMD, but the crate also says that content search is 20-50 times faster. Maybe the guy unsure how fast it is or how much speedup he should claim to get recognition.
reply
CodesInChaos 2 hours ago
Where can I find the benchmark for the "20-50 times faster than ripgrep" claim from the documentation, or the "100x faster" claim from the HN submission title?

Ripgrep already has optimizations for regex which don't contain any patterns (or even just regex which contain such substrings). So "not regex" shouldn't be what makes the difference.

reply
neogoose 7 hours ago
I have open sourced the fastest code search implementation. Comprehensive SDK for both file finder and grep file search that is over 100x faster than ripgrep
reply
siva7 5 hours ago
I don't get this submission title. Your tool uses regex but the title claims the future is not about regex.
reply
molszanski 4 hours ago
I think it is about input. Before I had to type regex, now I just type text and fuzzy finds more, regex style. Awkward wording, but code seems cool.
reply
MaxMonteil 7 hours ago
This looks cool!

You should add a link to the GitHub repo for the project itself, at first I wasn't even sure what it was called.

I found this link https://github.com/dmtrKovalenko/fff.nvim

reply
jcgrillo 2 hours ago
k, but what actually are you talking about?
reply
pjmlp 4 hours ago
It has never been ripgrep for decades for those of us on IDEs.
reply
e12e 2 hours ago
To be fair, ripgrep is approximately one decade old, would be tricky to have used it for decades.

http://blog.burntsushi.net/ripgrep/

https://news.ycombinator.com/item?id=12564442

reply
kzrdude 2 hours ago
However, it's coming up on a decade (8 years) of vscode using ripgrep behind the scenes.
reply
pjmlp 2 hours ago
A programmer's editor. However with the right plugins, you get the same IDE capabilities for code searching in Java, C#, C++,...

Which basically runs an IDE headless (Eclipse, Netbeans, VS services,...), the joy of running an IDE + Electron, get to put those cores to use.

reply
gzread 2 hours ago
Has there been a general gentle decline in IDEs over the past 15 years or is it just me?
reply
pjmlp 2 hours ago
Maybe for a generation that has learnt to program with IDE poorly supported languages.
reply
vovavili 2 hours ago
Zed has made me rethink this opinion.
reply
swiftcoder 4 hours ago
Is there a write up of the underlying approach? The summary on the repo mentioned SIMD, but not a whole lot else.
reply
self_awareness 2 hours ago
I've entered "bazel" and got `shellPrefix.ts` which doesn't relate to bazel in any way.

If that's the future then I'll stay in the past with ripgrep.

reply
_blk 2 hours ago
It's O(1) with a correctness of O(0)
reply
asdfadsfaf 4 hours ago
I don't get it how can I search anything but the file name?
reply
hugodan 3 hours ago
Why do all vibecoded sites look the same? Same black on neon vibes and button styles
reply
dig1 4 hours ago
ctags, GNU Global and even "ugrep -Q" would like to have a few words with you ;)
reply
globular-toast 5 hours ago
Why is it "for neovim"? Surely such a thing would be useful in many applications?
reply
ramon156 5 hours ago
Because it's being dishonest from multiple angles.

- it has regex, so the title is weird - it definitely wouldn't be 100x faster than rg - its an sdk, so its apples to oranges anyway

reply
schrodinger 6 hours ago
How's it work? Embed tokens and use euclidean distance or something?
reply
jcgrillo 2 hours ago
what even is this
reply
forrestthewoods 4 hours ago
Websites that don’t tell me what they’re doing are infuriating. I’m on mobile. This landing page experience is awful.
reply
stunpix 3 hours ago
For desktops it's not different.
reply
hyperlambda 2 hours ago
[dead]
reply