
The Treacherous Optimization (2006) - mr_golyadkin
https://ridiculousfish.com/blog/posts/old-age-and-treachery.html
======
ggm
The grep author coded with ASR-33 teletype. He didn't eat cheezels at his
keyboard AFAIK or mumble. He is a highly educated mathematician.

G/RE/P is the instantiation of the regex model in UNIX, and comes from Ken
Thompson directly. Its the same model in ed, and in sed, and awk.

~~~
saagarjha
A somewhat relevant read from the author:
[https://lists.freebsd.org/pipermail/freebsd-
current/2010-Aug...](https://lists.freebsd.org/pipermail/freebsd-
current/2010-August/019310.html)

~~~
ggm
Oh, the guys who came after may have feasted on pizza, but they are hardly the
"original grep author" are they?

 _I imagine the author of grep, Ultimate Unix Geek, squinting at vi;_

Either qualify "which grep" or define "author" because to me, Cervantes wrote
Don Quixote, not the translator.

------
saagarjha
New versions of grep just call regexec(3): [https://github.com/apple-open-
source-mirror/text_cmds/blob/9...](https://github.com/apple-open-source-
mirror/text_cmds/blob/94b08bd3a5db772a7e1f25baed9e1176ad22c2e9/grep/util.c#L358)

~~~
tedunangst
Eh, well... that's not gnu grep. Also you will notice a call to fastexec four
lines above, which uses a somewhat specialized matcher that's not libc regex.

~~~
saagarjha
I am aware, Apple took it out a while sometime after Mac OS X Lion (presumably
because it was GPL? This is the last I saw of it: [https://github.com/apple-
open-source-mirror/grep/commit/0b40...](https://github.com/apple-open-source-
mirror/grep/commit/0b404719ca81df65899cc4266fd09af5247b9917)) fastexec is not
called because Apple compiles with WITHOUT_FASTMATCH:
[https://github.com/apple-open-source-
mirror/text_cmds/blob/9...](https://github.com/apple-open-source-
mirror/text_cmds/blob/94b08bd3a5db772a7e1f25baed9e1176ad22c2e9/xcconfigs/grep.xcconfig#L13).

