Beefy Boxes and Bandwidth Generously Provided by pair Networks
Do you know where your variables are?
 
PerlMonks  

Which is better: ActiveState or Strawberry Perl?

by Eldan Aranye (Acolyte)
on Feb 17, 2012 at 06:30 UTC ( [id://954413]=perlquestion: print w/replies, xml ) Need Help??

Eldan Aranye has asked for the wisdom of the Perl Monks concerning the following question:

UPDATE: Wow, thanks for all the replies. And yes, I think I should've added other information in this post of mine. :D Well, to begin with, I'm a graduating BS Computer Science student. I wasn't able to learn Perl though, in any of my undergraduate courses. It was mentioned yes, once, twice, thrice in some subjects, but never really taught. I am currently employed (in training, to be exact) and I'll be using Perl for what it does best--string manipulation. I think I'll be handling some DNA sequences in the near future...:D Oh and I'm on Windows XP. :D Hope these help! Thanks again! Old post: Hello, I am new to using Perl, and I was wondering what would be better to use in Windows: Active or Strawberry Perl? Thank you and good day!
  • Comment on Which is better: ActiveState or Strawberry Perl?

Replies are listed 'Best First'.
Re: Which is better: ActiveState or Strawberry Perl?
by BrowserUk (Patriarch) on Feb 17, 2012 at 07:09 UTC
    what would be better to use in Windows: Active or Strawberry Perl?

    "Better" by what criteria?

    • Active State is easier to get started and will do pretty much all you need as a beginner.

      It comes with many useful and sometimes imperative Wndows modules preinstalled and configured, and makes huge numbers of other modules that you will need as your experience grows, available for 'one-click' installation via PPM.

    • Strawberry Perl's main claim to fame is that it theoretically makes it easier to install some modules that have a compiled component.

      In practice, most of the modules you will want as a beginner or indeed intermediate Perler, are available as a 'one-click' install for Active State anyway.

      Those modules that aren't so available, are the 'awkward squad' of compiled modules that have complex dependencies requiring the separate download and building of additional C libraries from 3rd party sources. And/or they have *nix platform code assumptions that need *nix expertise to resolve before the dependant Perl module will build on Windows.

      In my brief trial of Strawberry Perl, I found that those compiled modules it would install directly without manual intervention, would also install on Active State if you had a compiler correctly set up.

      And those that wouldn't install on Active State with compiler, also failed on Strawberry Perl until some manual interventions had been applied. Interventions that are frequently beyond my expertise to resolve.

    As a result, I remain an unashamed Active State Perl user.


    With the rise and rise of 'Social' network sites: 'Computers are making people easier to use everyday'
    Examine what is said, not who speaks -- Silence betokens consent -- Love the truth but pardon error.
    "Science is about questioning the status quo. Questioning authority".
    In the absence of evidence, opinion is indistinguishable from prejudice.

    The start of some sanity?

      As a result, I remain an unashamed Active State Perl user.

      Do you mean unshaven?

        Hey. I know my razor's a bit blunt, but I did try. 'sides, if you can see me, guess what this gesture means ... :)


        With the rise and rise of 'Social' network sites: 'Computers are making people easier to use everyday'
        Examine what is said, not who speaks -- Silence betokens consent -- Love the truth but pardon error.
        "Science is about questioning the status quo. Questioning authority".
        In the absence of evidence, opinion is indistinguishable from prejudice.

        The start of some sanity?

Re: Which is better: ActiveState or Strawberry Perl?
by choroba (Cardinal) on Feb 17, 2012 at 08:36 UTC
    The only problem we at work were having with ActiveState was their licensing constraints: you can not distribute their Perl. If you create an application with an installer, the installer has to download ActivePerl from their site: but there is no API for that and no guarentee the URL will remain the same (and it did change several times).
      If you make a "free standing" .exe with their PerlApp, you can distribute that at will with no restrictions to anybody that you want to. That is how I distribute my .exe code.

      Now that means that this .exe comes with 1MB+ of "baggage", the Perl execution engine for every single ".pl" program. But in today's environment, that size is of no concern in a practical sense.

      But this is correct, you cannot "re-distribute" their Perl. They want you to go back to the "quelle", their source for a Perl system download so that they maintain control of versions and for other marketing purposes! But a single Perl program made into a free-standing .exe with their PerlApp program - not pp, can be freely distributed.

Re: Which is better: ActiveState or Strawberry Perl?
by kcott (Archbishop) on Feb 17, 2012 at 08:47 UTC

    I have experience with both; however, note the following which may temper your ultimate choice. I've used both on Windows XP but not on any other Windows version. The last version of ActivePerl I used was perl-5.10.? (and haven't used it in ~2 years); the last version of Strawberry Perl I used was perl-5.12.0 (and haven't used it in ~6 months).

    I found the installation of both to be straightforward and, to the best of my recollection, hassle-free. Running Perl scripts was equally easy on both.

    The main difference becomes evident when you want to use modules (simplistically, these are files with pre-written code which you can selectively add to your Perl scripts). When you install Perl, you'll automatically get some hundreds of modules (see perldoc). Depending on what you want to use Perl for, you'll probably also want to access some of the many thousands of user-contributed modules (see CPAN). With ActivePerl, you'll only have access to a subset (albeit, quite possibly, a perfectly adequate subset) of these extra modules via the Perl Package Manager (PPM) which downloads and installs modules that have been specifically prepared to work with ActivePerl. Strawberry Perl, on the other hand, provides a number of tools that allow you to install (to the best of my recollection) any module: mostly, this is no more difficult than using ActivePerl's PPM but there may be cases that prove somewhat more daunting (depending on your general computer proficiency).

    If you're more use to working in a GUI environment, then ActivePerl might be your best bet. If you're happy with working on the commandline, then Strawberry Perl might suit you better. It would appear my recollection of ActivePerl is lacking - see BrowserUk's reply below. You can try both if you want; although, trying to run them simultaneously will prove problematic.

    To get a better answer, you might like to update your original post with additional information such as:

    • The version of Windows you're using
    • What you're intending to use Perl for
    • Your general computer proficiency

    -- Ken

      If you're more use to working in a GUI environment, then ActivePerl might be your best bet. If you're happy with working on the commandline, then Strawberry Perl might suit you better.

      I was with you right up until the above paragraph. I exclusively use the command line for perl and C/C++ development. I see absolutely nothing in Active State Perl that requires, nor even encourages using a "GUI environment".

      In fact, other than the PPM GUI -- which I have always eshewed in favour of the also installed command line alternative: ppm-shell -- there are no GUI components in Active State Perl. So, why do you think you have to be a GUI user to use Active State Perl?


      With the rise and rise of 'Social' network sites: 'Computers are making people easier to use everyday'
      Examine what is said, not who speaks -- Silence betokens consent -- Love the truth but pardon error.
      "Science is about questioning the status quo. Questioning authority".
      In the absence of evidence, opinion is indistinguishable from prejudice.

      The start of some sanity?

        As you are a current ActivePerl user and I haven't touched it in, as I noted, ~2 years, I'm more than happy to bow to your more recent knowledge. I do recall using the PPM GUI: that probably prompted what I wrote. I'll put an update in my post.

        On a completely different topic, I think your mouse button got stuck as you seem to have posted your reply 17 times. The visual effect was quite interesting as my Chatterbox appeared to erupt in a shower of "root says You've got a reply to Re: Which is better? from BrowserUk at Re^2: Which is better?" messages. Nice one! :-) Pity about the mouse. :-(

        -- Ken

      Strawberry Perl, on the other hand, provides a number of tools that allow you to install (to the best of my recollection) any module

      ActiveState provides the same tools

      ppm install MinGW cpan SomethingNotAvailableViaPPM
Re: Which is better: ActiveState or Strawberry Perl?
by Anonymous Monk on Feb 17, 2012 at 07:12 UTC
Re: Which is better: ActiveState or Strawberry Perl?
by Marshall (Canon) on Feb 17, 2012 at 08:27 UTC
    I am also an unashamed Active State user. If you use their PPM (Perl Package Manager) for module installation, it is very easy.

    Active State does a lot of work on the "look and feel" for the graphical (GUI) modules like Tk. It will look to the user like a native Windows application (that it is a Perl application is almost unnoticeable). I have never used Strawberry for a serious project before so I cannot comment on how well or not well that they have done on that part, but I can say that Active State does very well.

    Some of the Active State utilities have no counterpart of which I am aware on Strawberry or other Perl distributions. For example, I wanted to add a developer to one of my freeware projects, I sent him what Active State calls a "profile" which is an XML file and he runs it (this does take awhile) but, bingo he has now "cloned" my system with every module that I have.

    I do have a license for the Active State Perl Development Kit and this thing makes deploying .exe files much easier than with Strawberry. But you have to pay for this.

    Overall, I have not seen any advantage to go with Strawberry.

      Active State does a lot of work on the "look and feel" for the graphical (GUI) modules like Tk.

      No it doesn't, where do you get this stuff?

        Please educate me about how this works. I just know that the Tk programs that I write look real nice on Windows and look like crap on Unix (although they run). Maybe this is a lot easier to do on Windows than I thought? I guess you are saying that. And that Strawberry will look equally nice on Windows? I don't know. If so, then great, glad to hear it.
Re: Which is better: ActiveState or Strawberry Perl?
by planetscape (Chancellor) on Feb 17, 2012 at 12:40 UTC

    There is no reason you can't try both and decide for yourself which you prefer. See here.

    HTH,

    planetscape
Re: Which is better: ActiveState or Strawberry Perl?
by cjb (Friar) on Feb 17, 2012 at 13:26 UTC

    The big advantage Strawberry Perl used to have over Active State was the fact that a large number of CPAN modules weere easy to install, due to Strawberry Perl including a c/c++ compiler. This is now no longer an issue as you can install a compiler in Active State with a single ppm command.

    I guess the big advantage for some in Active State is the fact you can pay for commercial support, while you have to rely on an active community for support in Strawberry Perl. Whether this is a good thing or not depends on your situation of course.

      In XP with web access this is true. I recently needed LibXML on a Server 2008 64 bit platform that has no web access. After failing to install a compiler without ppm or cpan connections I found out that Strawberry Perl comes with LibXML so I uninstalled ActiveState and put Strawberry Perl in. I can't do that on production servers but this was a developement server and it worked great.

Re: Which is better: ActiveState or Strawberry Perl?
by TJPride (Pilgrim) on Feb 17, 2012 at 09:59 UTC
    ActivePerl has a much larger user base, and as such would be the preferred variant. Never know when you'll need to set something up on someone else's machine.
      I like this idea.

      Active State is very easy to setup (just an .msi file - no compiler needed).

      Their PPM (Perl Package Manager) is easy to use. The PPM GUI version takes awhile to start, but so what? Get a cup of coffee in the meantime... Once it starts, it is easy to use. I use it and I recommend it for others.

      One thing to note: the decision between Active State or Strawberry is not some "irreversible decision"! Perl programs will run under both!

      The important part is to get started!

        "Active State is very easy to setup (just an .msi file - no compiler needed)."

        Strawberry Perl is the same, just one .msi to download.

Re: Which is better: ActiveState or Strawberry Perl?
by Marshall (Canon) on Feb 17, 2012 at 16:35 UTC
    Ok, there has been a lot of posts about Active State vs Strawberry Perl on Windows. I am a happy Active State user - others have different opinions.

    Your Perl programs will run on all of this stuff!
    I have a number of Perl programs that routinely run on the MAC OS (current one is *nix based), various versions of Windows (Win2K,WinXP,Win7,etc) and various flavors of Unix - all of which are using various flavors of Perl installations.

    Perl is an an amazingly portable source code language.

    The next question is what sort of "development environment" should I use? That question is probably more important than the particular "flavor of Perl" that you are using.

    I personally use "dinosaur technology" for Perl - just a program text editor - textpad. There are other similar ones Notepad++.

    I have function keys defined to run a Perl, C, C++ or Java Program from the current text window and capture the output in another text window. Works pretty well, but not well all the time. I have MS visual studio tools for more complex C++ and assembly language projects. And Eclipse for Java.

    Anyway, I think the question of "ok, I've got some kind of Perl on my Windows machine...now how do I use this critter?" is relevant and probably more important than what "flavor" of Perl you have. Maybe you should start a whole new thread on that subject.

Re: Which is better: ActiveState or Strawberry Perl?
by runrig (Abbot) on Feb 17, 2012 at 17:59 UTC
    Strawberry perl has Frozen Bubble, if you can manage to find the right version to download (one of the beta releases I believe). I don't know why it is not included in the regular releases.
      ActiveState has been unable to support the DB_File module for quite a long time (since 2008 IIRC). DB_File is handy if you need a lightweight high performance way to tie a hash to a database file (Berkeley DB). DB_File works fine in Strawberry Perl right out of the box. This was a big deal for me and prompted me to switch from ActiveState to Strawberry.

        ActiveState has been unable to support the DB_File module for quite a long time

        Supporting DB_File is trivial, ActiveState chooses not to support it

Log In?
Username:
Password:

What's my password?
Create A New User
Domain Nodelet?
Node Status?
node history
Node Type: perlquestion [id://954413]
Approved by moritz
help
Chatterbox?
and the web crawler heard nothing...

How do I use this?Last hourOther CB clients
Other Users?
Others lurking in the Monastery: (1)
As of 2024-04-25 12:05 GMT
Sections?
Information?
Find Nodes?
Leftovers?
    Voting Booth?

    No recent polls found