

Ack - a faster, more featureful, grep - smanek
http://petdance.com/ack/

======
bprater
Wow, impressive homepage from a marketing angle. You hackerheads would do well
to print out this website and hang it on your wall.

Note the use of: quick, clear description; testimonials; subscribe box so you
can keep in touch with the project; a top-ten list; and no-frills detailed
information.

~~~
chrisbroadfoot
I am a strong believer in having code examples on your front page. Ruby wins
at this, as does Groovy.

------
uzi
While we're on something that is essentially a more powerful "find and grep",
I wrote this years ago:

<http://uzix.org/cgvg.html>

Like ack, it uses perl's regexes... just add more file extensions and you're
golden. The nice thing is you do:

    
    
      cg pattern
    

which gives you a list with what it found, which file, the line number and an
index... then you

    
    
      vg index
    

and it opens that file at that line.

------
neilc
It seems like it is only faster because it applies a bunch of heuristics to
avoid searching certain files and directories altogether. I use "ack" myself
and it's quite nice, but the heuristics aren't perfect: ack won't search for
strings inside yacc grammars (".y" files) by default, for example.

~~~
smanek
True, part of the speed comes from it's (configurable) heuristics.

But, it's faster even when doing the same thing. For example, see the
benchmark at <http://blog.i-no.de/archives/2008/05/06/index.html>.

Then end result is that, on the same search, ack is approximately 5 times
faster than grep. I ran a few test cases myself and got similar results.

But the real reason I like it is the perl compatible regexes. The differences
between perl regexes and gnu regexes are just big enough to be an annoyance.

~~~
jrockway
It doesn't use "perl _compatible_ regexes", it uses Perl.

~~~
smanek
I would argue that 'perl regexes' are a member of the set of 'perl compatible
regexes' ;-)

~~~
donw
Proof? ;p

------
swombat
Is it possible to install it under Leopard without using Ports?

~~~
smanek
yep, it's just straight perl, and Leopard comes with perl

------
jobeirne
Why do all these regex utilities sound like onomatopoeias for really obscene
things?

