Hacker Newsnew | past | comments | ask | show | jobs | submitlogin

For context for our younger audience members: Perl was the Python of its day back a little over 20 years ago. It was, at one time, hugely popular.

Perl is still hidden in dark corners all over Linux distributions and even macOS (which is why it still ships with Perl, but not Python).



Current macOS ships with both. On a new laptop with Sequoia installed:

  √ ~ % /usr/bin/python3 --version
  Python 3.9.6
  √ ~ % /usr/bin/perl -v

  This is perl 5, version 34, subversion 1 (v5.34.1) built for darwin-thread-multi-2level (with 2 registered patches, see perl -V for more detail)
  ...
EDIT: I'm wrong about Python. See below.


Beginning with 10.15, macOS doesn’t ship with Python anymore.

However, if you install the Xcode Command Line Tools, it will install Python solely because of their developer tool dependencies. It’s not really meant for end user development use. The longer term intent is to eliminate those dependencies but that’s a lot of work.

You probably see this version because you have the Command Line Tools installed. If you go to a macOS system without the Command Line Tools installed, you will get Apple’s deprecation notice when you try to run Python.


You're right. I installed the XCode command line tools as one of my first actions after getting the machine. I didn't realize that Python was no longer part of the stock configuration.


Yeah, I mean for at least a couple major versions, Apple stated Python was going to be deprecated in a future major release.

I learned this the hard way. I wrote a ~1,000 line Python script for our giant fleet of Macs only to discover Python was finally removed and that it was only present on my system, because I had installed the Command Line Tools.


Python isn't even remotely close to the popularity Perl had or its omnipresence till date. Python couldn't reach the peak of nearly anything it tried. For serious app dev Java/Golang won, Web is ruled by JS/React, C/C++/Rust rules places where performance is more critical. Python's refusal to take text and OS work serious has largely rendered it useless for serious scripting work. People use shell and old timers use Perl.

In the AI world, Python use is mostly invoke a series of framework API(a few hundred lines of code), for data manipulation you still have to use shell or Perl.

The internet, telecommunications, bioinformatics etc industries and entire generations of backend were built entirely in Perl. And by many definitions is still the case.


Funny you describe it like that, I call Python the modern day Perl, which is not always well received, but considering it is used to power so many major systems, it is arguably the Perl of today. I always mean to get more into Perl, but always find myself back in Python or C#.


I was an “advanced” Perl programmer back in the day, but now I use Python for those same tasks.

I never really enjoyed Python itself. I loved, LOVED Perl — at least when I was working with code I wrote.

I sometimes think about going back to Perl and finishing my days with it, but I haven’t pulled the trigger.


I'm maintaining an absolutely massive Perl codebase at work. I've made it extremely resilient so that I can stop fire-fighting it and 2025 is the Year of the Rewrite. Wish me luck...




Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: