Live data from Hacker News

macOS deprecating scripting language runtimes, including Python, Ruby, and Perl

developer.apple.com

61–70 of 450 posts

Re: macOS deprecating scripting language runtimes, including Python, Ruby, and Perl

#61

Interesting that some version of Python will still retain a default status, while Perl and Ruby are both being removed from the default install. Congratulations, Python 3!

That’s because no ruby developer ever depends on system ruby. It superfluous, not a vote for python.

Re: macOS deprecating scripting language runtimes, including Python, Ruby, and Perl

#62

So, what's the point of using Macs as a better Linux, if they are continuing to strip out the parts of Linux that are useful? Might as well use WSL or Cygwin and save a bunch of money.

... but you have to install these in Linux as well? Python, ruby, etc are not required for Linux to run and for a long time we’re not installed by default (I don’t know if they are these days because the regular fresh install dance for Linux just has me autopilot through installation of all the things that are inexplicably not included, which historically included python).

There are many reasons that people choose to use a Mac, mostly when people say “Linux” in this context they mean: posix shell, and the ability to run most other posix software (eg most Linux commandline apps).

It’s not because it has every interpreter on earth installed by default. In fact as others have said the current status is that the system installs of python and ruby are old because updating them breaks software. The solution is to make them not part of the OS so if software does want to use an interpreter they don’t lock the shipping version again.

Linux doesn’t have this problem because it’s assumed that your update process comes from a central repository of all the apps so if you (say) update python you also pull recompiled updates of all the apps you have that depend on python. Software installation on a Mac is generally not all from one source, and even if it were Apple doesn’t have the ability to recompile other developer’s apps.

Re: macOS deprecating scripting language runtimes, including Python, Ruby, and Perl

#63
post #5

Does this include AppleScript and the Javascript runtime for AppleScripts? They reference Script Editor in the section above, so I'm assuming they're safe. Also, what's the best way to install homebrew if you don't have a system-level ruby? The current installer is a ruby script. Is it possible to get some sort of ruby-bootstrap that can install homebrew and a homebrewed ruby?

On Linux, the Homebrew installer is a shell script that invokes curl https://docs.brew.sh/Homebrew-on-Linux. I guess, they can rewrite the current installer that uses Ruby with a shell version for macOS too.

Re: macOS deprecating scripting language runtimes, including Python, Ruby, and Perl

#64

Fucking finally ! Between this and deprecating Bash [1], I'm glad macOS is dropping all these obsolete packages it's been including (Emacs soon?). Their antiquity mean they're more of a hindrance to proper development than help. Now, if they'd officially endorse one open-source packaging solution as an alternative, I'd be fully satisfied. [1] https://news.ycombinator.com/item?id=20090193

MacPorts has or had semi-official status. It was hosted by macOS Forge, which was an official Apple site that included other projects such as XQuartz. I'm unclear on the current status.

That isn’t semi-official. I know of not one ruby dev at Apple that uses MacPorts. That’s not to say there isn’t one, but they are rare.

Re: macOS deprecating scripting language runtimes, including Python, Ruby, and Perl

#65
post #7

Probably the right call - many of them don’t have abi or api stability guarantees, or in the case of python needlessly broke backwards compatibility that is still causing pain today. Apple used to ship an incredibly old version of OpenSSL because people used its API which was not ABI stable. Even getting rid of it was a nontrivial amount of work. The lack of care about API&ABI stability in developer facing open sourc…

It’s part of why companies like Apple and Microsoft care so much about backwards compat

Compared to (former) Microsoft, I don't think Apple spends anywhere near the amount of effort MS does on backwards compatibility.

You can create a single .exe that will work on any Windows starting from Windows 95 - nearly 25 years. In that timespan, Apple changed CPU architectures twice, and their OS architecture once. If you're willing to restrict yourself to 32-bit Windows, which can run Win16 and DOS apps too, then it goes back to the early 80s.

Re: macOS deprecating scripting language runtimes, including Python, Ruby, and Perl

#66

With brew as the de-facto package manager for macOS this is a great move. Having Python and Ruby bundled with macOS is confusing when trying to install "regular" versions of the software through brew or other methods. Because the default installation can't updated without updating the OS, the system versions are not useful for most developers.

The down side to that is that ruby is currently required to install Homebrew.

Re: macOS deprecating scripting language runtimes, including Python, Ruby, and Perl

#67
post #2

I think that's ok, most everyone installs homebrew

How do you install homebrew without Ruby?

You basically rewrite the current Ruby installer in a shell script that will download a Ruby version from Homebrew ...

Re: macOS deprecating scripting language runtimes, including Python, Ruby, and Perl

#68
post #58

I don't understand why everyone is so excited about this. I don't like using brew. I use a Mac because things just work. It was annoying that the system versions were old, but most of the time they were still workable. To me, this is another (admittedly small) thing I liked about the Mac that's going away.

The problem is accruing security flaws (increasingly difficulty to back port fixes), and also the problems that come up when you install a different version (lots of Software just assumes it can use the same system python, which causes issues when it isn’t the archaic version).

Re: macOS deprecating scripting language runtimes, including Python, Ruby, and Perl

#69
post #7

Probably the right call - many of them don’t have abi or api stability guarantees, or in the case of python needlessly broke backwards compatibility that is still causing pain today. Apple used to ship an incredibly old version of OpenSSL because people used its API which was not ABI stable. Even getting rid of it was a nontrivial amount of work. The lack of care about API&ABI stability in developer facing open sourc…

If you're referring to the python2->python3 change, this was a pretty important one. Having a string type that isn't required to have valid encoding is an awful idea.

Re: macOS deprecating scripting language runtimes, including Python, Ruby, and Perl

#70

Earlier quoted context omitted.

Python and pip just being there is a huge advantage for newbies. I really think that part of programming is constantly ignored because all the decision-makers are not newbies.

AFAIK, macOS comes with Python 2.7 and without pip. For any serious, modern , Python development you need to install Python 3 yourself.

Again the word "serious" is there telling me people are absolutely aloof to the kinds of new developers there are and what it's like to be a non programmer.
Post reply on HN