Perl is spreading to Windows

Microsoft has been providing an option to install git with Visual Studio for a while now. From the start, this installation included a perl built with MinGW tools.

It worked for the purposes of handling git hooks etc, but it was version only version 5.8 of the language, from a decade ago.

Yesterday, I installed Visual Studio 2015 Update 2 CTP.

The setup screen showed that they were updating the bundled git environment. I was pleasantly surprised to find out that this meant they were also including a more up-to-date perl with it:

C:\> "C:\Program Files\git\usr\bin\perl" -v

This is perl 5, version 22, subversion 0 (v5.22.0) built for x86_64-msys-thread-multi

Every developer who chooses to install git alongside Visual Studio 2015 Update 2 will have a rather recent version of Perl at their disposal. Now, this is not a complete development environment (no GNU make, no C compiler), but it makes it easier to reach for Perl on a Windows development machine.

Perl does build perfectly fine with Visual Studio 2013 tools, but it does not build with 2015 tools due to the way it reaches into the guts of stdio.h’s FILE structure. At least, that was the case the last time I checked.

This still makes it cumbersome if you want to build and install your own perl with native tools, install XS extensions etc, but, still, just having Perl by default on many Windows development environments may spread Perl farther than we thought possible.

It’s a pity pl2bat and similar tools rely on a perl in the user’s path rather than hardcoding the specific perl used to invoke them. That would make side-by-side co-existence of multiple versions of perl as easy as it is on *nix systems. It’s a greater pity that I haven’t spent any time on trying to fix this.

For now, let’s focus on the good news: Soon, a modern version of Perl will be available on many more machines.

You can discuss this post on r/perl.