8 ms·
> 2) Is ubiquitous On which systems do you have Perl readily available but not Python?
by unmole 7y ago
> 2) Is ubiquitous
On which systems do you have Perl readily available but not Python?
- gsich 7y agolegacy stuff
- isostatic 7y agoWhich version of python? Perl documentation online applys to versions of perl that are installed. Python stuff is all bleeding edge - you'll research why something isn't working and after 30 minutes find it's expecting python 3.7. The whole concept of "virtualenv" gives me an impression of fragility I don't get with perl.
- deleted 7y ago[deleted]
- jsymolon 7y agoWanted to use Python 3 for some processing but the Sysadmin said that only Python 2 was available for that distributions version and "didn't want to frankenstein the box"
- mkl 7y agoWhat about installing miniconda in your home folder? How ancient is that system?
- Izkata 7y agoPossibly CentOS, which requires python 2.7 even now.
- jsymolon 7y agoRedHat EL5. No matter, that system is going to be decommissioned and functions will go over to a new EL7 install. It just stalls that project till the new server is ready.
- isostatic 7y ago> What about installing miniconda in your home folder? This is not how you deploy software
- mkl 7y agoYou are right, but I interpreted it as a one off manual task. I've used miniconda in that way.
- CJefferson 7y agoThe problem with python is some systems have 2, and others have 3. Basically everything has perl 5.
- w8rbt 7y agoWhich one? Python 3.5.x or 3.7.x or something else? Version 3 should be version 3. Anything written in 3 ought to work on every Python 3. Not so in the Python world. And that makes it a mess to use (unless you Dockerize every script). Perl 5 is Perl 5 everywhere.
- gmfawcett 7y agoPerl 5.001 is really old (25 years or so), and lots has changed since then. v5.10 introduced a barrel-full of new features; other important features like the "use v5.10" syntax for supporting older scripts didn't land until much later (v5.16). Where I work, a few of our legacy systems are still dependent on ~v5.10, which can be a real pain when trying to port code back to legacy. I agree that the Python versioning problem is perhaps more prominent, but Perl 5 doesn't really get a free pass here.
- smueller1234 7y agoThe "use VERSION" syntax is fundamentally much older. It used to strictly just assert a minimum version. It also, pre 5.6, required floating point versions ("use 5.005"). In newer versions of perl, this syntax will also invoke "use feature <stuff new in your version and all versions before>" which allows the use of incompatible new features in its lexical scope. One example is that "use 5.12;" and above will turn on "use strict" in the lexical scope. I fought long and hard for that one. Makes the language strictly better (pun intended).
- gmfawcett 7y agoIt strictly does! :) I knew that "use 5.12" implied "use strict" but I didn't know the mechanism, or that it could enable other features as well. That's pretty cool!
- toast0 7y agoFreeBSD ships perl5 in base, but python is an addon. I suspect other BSDs may be similar. The only thing more ubiquitous is POSIX compatible /bin/sh but that's much less featureful. Because of the stability of perl5, I barely care what version of perl5 that ends up being. (Perl 5.10 and up is pretty much what I want, 5.8 and 5.6 are a drag if i might need unicode)
- yellowapple 7y agoOpenBSD ships with Perl (it's used for the package management tools, among - I presume - other things) but not Python, last I checked. Not that installing Python is especially difficult, but still.