In short, the Curl developers couldn't remove pipes without crippling the app.
In short, the Curl developers couldn't remove pipes without crippling the app.
Which is to say that your comments are not self-evident to everyone, by any means.
Example: less(1) was eventually fitted with the -R flag to allow highlighting to be passed by pipe, to make it friendly to piping from highlight-producing apps rather than its default highlight-unfriendly stripping of input controls/escapes.
Benign intentions with regard to files sometimes require a little more thought to be simultaneously friendly to pipes, except for the simplest of plain text apps.
(I'm not trying to make a big point, but I just rediscovered 'less -R' out of necessity today. So, I was pondering some of these issues)
Worth a re-read for everyone (and I worry that these things may be in the process of being forgotten):
[1] https://en.wikipedia.org/wiki/Unix_philosophy
[2] https://en.wikipedia.org/wiki/Unix_philosophy#Eric_Raymond's... and the book:
[3] https://en.wikipedia.org/wiki/The_Art_of_Unix_Programming
[4] Raymond didn't invent any of this, but he explained it very nicely, IMHO.
Edit: P.S. the above is somewhat meandering, and is sure to be criticized because simple equivalence of piped and file input is the most important thing, which I agree with -- but I was mixing that with a secondary point because of what I was doing today. Sorry. "I did not have time to make this letter shorter" etc.