Sujet : Re: Command Languages Versus Programming Languages
De : janis_papanagnou+ng (at) *nospam* hotmail.com (Janis Papanagnou)
Groupes : comp.unix.shell comp.unix.programmer comp.lang.miscDate : 12. Apr 2024, 14:48:37
Autres entêtes
Organisation : A noiseless patient Spider
Message-ID : <uvbe3m$2cun7$1@dont-email.me>
References : 1 2 3 4 5
User-Agent : Mozilla/5.0 (X11; Linux x86_64; rv:45.0) Gecko/20100101 Thunderbird/45.8.0
On 08.04.2024 19:54, Javier wrote:
I don't worry about that anymore. My bash scripts run blazing fast
in my laptop with an SSD.
If speed would be an issue you could also switch to faster POSIX
shells than Bash, like Ksh.
But speed very much depend on the tasks you actually do with them.
Sometimes Shells are "misused".
I guess it was an issue at the time Perl
appeared (1987), although TBH I didn't experience it myself, since at
that time I wasn't a Unix user.
Also, I suspect HD caching and the increase in HD speed was one of the
reasons for the fall in popularity of Perl for writing small system
automation tasks that could be done with just shell. But there were
another reasons, like the disapearance of diversity in the Unix OS ecosystem.
Perl made easy to write portable scripts that could run on propietary Unixen
that came with slight incompatibilities in the command line tools
(IRIX/Solaris/HP-UX/AIX, etc.)
Some notes...
You have the portability only if you use the same version on all
target systems.
To write scripts portably you use standards; like POSIX (including
the POSIX shells).
I suppose there's no Perl standard yet?
You may not have Perl in professional environments available (for
security considerations, maintenance decisions, policies).
Perhaps somebody here who uses (or used to use) Perl for system
automation tasks can tell us more about their personal reasons
for prefering (or used to prefer) Perl over shell.
I've programmed in Perl but I'm no Perl-programmer notwithstanding.
Some more or less obvious reasons I see...
Abstraction of diverse Unix utilities' interfaces.
Supporting data structures (beyond primitive arrays).
Expressiveness.
Extensive libraries and supporting solutions available.
One tool instead of a tool chest. (A simplified view, granted.)
Less quirks than Shell. (I'm saying that as a decades long and
experienced Shell programmer.)
I'm reluctant to speak about Shell's crude syntax as one reason,
since I also dislike Perl's.
Janis