Is the Linux terminal smart when running piped commands?

view full story

http://unix.stackexchange.com – I was just running a few commands on a terminal and I started wondering, does Unix/Linux take shortcuts when running piped commands? For example, let's say I have a file with one million lines, the first 10 of which contain hello world. If you run the command grep "hello world" file | head does the first command stop as soon as it finds 10 lines, or does it continue to search the entire file first? (HowTos)