Martin Ba Martin Ba - 19 days ago 7
Perl Question

Perl on Windows: 32bit or 64bit?

For several scripting tasks, our team currently uses Strawberry Perl 5.14 / 32bit and I'm looking into upgrading to the latest 5.24(+) version.

I have always used the 32-bit version on Windows, and I found some references that the 32-bit version may be a little bit less troublesome in general, but how true that is today, I have no clue.

In general, today on my Win7-Win10 installations, I try to install the 64bit version of a tool if there is one available, but since perl is not a tool but a toolbox, the choice seems a bit more complicated.

Of course, it's no problem at all having two Strawberry Portable/ZIP Versions in parallel on the same box, but obviously we as a team want to minimize version variations as much as possible, so I guess the question could be summed up as a

TL;DR: Default to 32-bit Strawberry Perl and use the 64-bit one when needed, or default to 64-bit Strawberry Perl and use the 32-bit one when a package only has a 32-bit version?

I checked, and if it's relevant, the only packages we currently have in addition to the Strawberry 5.14 defaults are

DBD::Oracle
,
HTML::Formatter
,
XML::LibXML
and
XML::LibXSLT


Oh, and of course, "it doesn't matter, because there are only some obscure modules, or you'll know exactly when it matters (e.g. 32bit vs 64-bit MS Office)" is indeed a valid answer, which doesn't make the question per se opinion based IMHO.




I'll note that the Strawberry homepage lists both the 64-bit as well as the 32-bit version as recommended, but lists the 64-bit version first.

tjd tjd
Answer

The rule of thumb I've always used during architecture changes is to examine your tool-chain. If nothing is holding you back, move to the newer architecture. If some part of your tool chain is 32-bit only, then deal with 32-bit for a little longer.

For example, I have a customer who requires NotesSQL, and for some time they only provided a 32-bit version of their library. This meant sticking with a 32-bit ODBC connection and a 32-bit perl. Now all the tools I depend on are available in 64-bit. Odds are, at this late date, that the same is true for you.