Remix.run Logo
drob518 11 hours ago

I’ve read this multiple times over the years and this post is still the most interesting and informative piece describing the problem of making a fast grep-like tool. I love that it doesn’t just describe how ripgrep works but also how all the other tools work and then compares the various techniques. It’s simultaneously a tutorial and an expert deep dive. Just a beautiful piece of writing. In a perfect world, all code would be similarly documented.

VorpalWay 7 hours ago | parent [-]

The same author also wrote the defacto standard regex library in Rust, and somewhat recently a new time and date library (jiff).

The comparison between jiff, chrono, time and hifitime is just as good of a read in my opinion: https://github.com/BurntSushi/jiff/blob/HEAD/COMPARE.md

(And they have also written interesting things on regex, non-regex string matching, etc.)

1-more 4 hours ago | parent [-]

He also wrote the rust CSV parsing library and then the command line utility xsv that uses it. It's an incredible piece of software for breaking down massive CSV files where fields contain linebreaks and you thus cannot use sed to just get ranges of lines.