Beefy Boxes and Bandwidth Generously Provided by pair Networks
Do you know where your variables are?
 
PerlMonks  

Re: A thought about usability in Perl and Linux in general.

by etcshadow (Priest)
on May 18, 2005 at 17:58 UTC ( #458351=note: print w/replies, xml ) Need Help??


in reply to A thought about usability in Perl and Linux in general.

I think that the single biggest reason is because of the idiom under which many scripts/unix-like programs are written is this: accept files (or pipes) for input, either by named files/named pipes in the command line or as stdin. Likewise, they quite typicall use STDOUT for their output (not for prompting users questions and such), although they will often have some sort of switch that allows you to name the file(s) for output. Any reporting is typically done to STDERR, so that pipelines and/or output data files are not clogged up/confused with miscelanious reporting.

The fact that many, many things behave this way, tends to make people implement other things in a compatible fashion... even if they are not something that is reading in files and/or writing out files.

Anyway, you ask why, and I think that's a pretty big part of why.

update (addition): I meant to point out: perl, itself, supports this mode of thinking very much so, by way of its -n and -p switches, and it's "diamond operator" <>, which all implicitly iterate over opening and reading from files in @ARGV or reading from STDIN if @ARGV is empty.

------------ :Wq Not an editor command: Wq

Log In?
Username:
Password:

What's my password?
Create A New User
Node Status?
node history
Node Type: note [id://458351]
help
Chatterbox?
and the web crawler heard nothing...

How do I use this? | Other CB clients
Other Users?
Others chanting in the Monastery: (4)
As of 2019-10-14 06:03 GMT
Sections?
Information?
Find Nodes?
Leftovers?
    Voting Booth?
    Notices?