The "loop and a half"
On 06/10/2017 12:45, Chris Angelico wrote:
> On Fri, Oct 6, 2017 at 9:32 PM, bartc <bc at freeuk.com> wrote:
>> (And properly, by being given the same of an actual file rather than using
>> crude redirection.)
> Why do you call redirection "crude"? Do you not understand the value
> of generic solutions that work with all programs, rather than having
> every program implement its own "take input from file" parameter?
> You can disagree with the Unix philosophy all you like, but when you
> insult it, you just make yourself look like an idiot.
Redirection is used on Windows too. I use output redirection quite
frequently (to capture the output of 'dir' for example).
I don't rely on > and < in my own programs. Where there's complex, mixed
output, the bulk of it - the data - needs to go to a proper file, while
the screen shows messages.
If you don't like the word 'crude', try 'lazy'. Take this example of the
gcc C compiler:
> gcc -E program.c
This preprocesses the code and shows the result. Typical programs will
have many thousands of lines of output, but it just dumps it to the
console. You /have/ to use '>' to use it practically (Windows doesn't
really have a working '|' system.)
Another compiler might simply write the output to a file 'program.i'.
BTW if I try:
> gcc <program.c
it doesn't work (this on Linux). What happened to the generic solution?