How grep got its name
robots.thoughtbot.com
robots.thoughtbot.com
Grok is a term from Robert A. Heinlein's book "Stranger in a strange land."
I can see why finding out that these amazing words are not 'official' English could make you sad, but for me I find it amazing and encouraging, as this is exactly the way that some language is formed! They are so full of future potential.
I look forward to seeing what terms 'make it' into major dictionaries in the future.
(edit: oh come on, you know it'll end up in there eventually!)
grep, v. Computing. 1. intr. To search for a string of characters using the grep command. Also trans.: to search (a file) in this way. 2. trans. slang (usu. humorous). Of a person: to search; to scan visually.
Both marked: DRAFT ENTRY June 2010
If there's a term that you think matches that criteria but isn't included you can gather up some relevent citations and send them in and they'll consider it for addition.
To get a transparent look at how they do this kind of thing have a look at:
The OED ran an open research project to gather evidence of science fiction terms as they figured the online SF community would be much better at finding this evidence than their own researchers.
People look at me funny when I point that out.
EDIT:
In December 2003, the Oxford English Dictionary Online added draft entries for "grep" as both a noun and a verb. — http://en.wikipedia.org/wiki/Grep#Usage_as_a_conversational_...
http://massis.lcs.mit.edu/archives/history/early.history.of....
What's interesting is the history of dd and its completely non-UNIX like argument format e.g., if=/dev/null of=./foo bs=4k: the latter was designed as a prank mocking IBM's mainframe OSes (today's equivalent would be making a FactoryFactory in Python, I'd imagine)
awk = Administrator's Wisdom Kit
sed = Stream EDitor.
awk = Aho, Weinberger, Kernighan
But I'm sincerely interested to know why you say that their implementations are braindamaged.
It was one of the first end-user programs hosted on the system and has been standard in Unix-based systems ever since. ed was originally written by Ken Thompson and contains one of the first implementations of regular expressions. ... Famous for its terseness, ed gives almost no visual feedback. For example, the message that ed will produce in case of error, or when it wants to make sure the user wishes to quit without saving, is "?". It does not report the current filename or line number, or even display the results of a change to the text, unless requested.
Nowadays, I use ed regularly whenever possible. I even wrote a blog post on my experiments:
http://coliveira.net/software/using-ed-the-standard-unix-edi...
If your editor were to echo back everything you'd typed, you'd waste twice the bandwidth (once to send a keystroke in and once to get it echoed back). Though in reality it would be more like 4 times because each character sent through would require a TCP-ACK packet sent back. By saying nothing, ed became really fast.
sed took things to the next level. If you already had a file on a remote system, and wanted to make changes to it, all you had to do was note down the 'ed' commands to make those changes, and then tell sed to run them. You didn't have to open ed to operate on the file, you just had to send your commands over the network and sed would operate on the file remotely. A more efficient rsync, if you will.
When ed was used, it would be common to interact with the computer on a teletype, not even on a crt monitor. So a response meant printing characters on paper.
sed was and is more about programmatic editing (i.e., editing a stream as it was generated, using a script for commands), or editing of large files that would overwhelm system memory, not about some kind of remote usage the way you're describing.
This is wrong. Pressing Q in vi quits visual mode and returns you to ex(1). ex(1) precedes vi(1) and was an extended editor, based on ed(1). That's why the commands are similar, but not identical. And ed(1) isn't dead, it still is a command-line editor. :-)