http://www.perlmonks.org?node_id=1055636


in reply to Re^2: I want you to convince me to learn Perl
in thread I want you to convince me to learn Perl

In the argument "line noise vs. significant whitespace", I opted for the latter

It's not just the significant whitespace issue; though that is possibly the most frequently annoying. Other things I remember:


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.
  • Comment on Re^3: I want you to convince me to learn Perl

Replies are listed 'Best First'.
Re^4: I want you to convince me to learn Perl
by Ralesk (Pilgrim) on Sep 25, 2013 at 18:56 UTC

    It's not just the significant whitespace issue; though that is possibly the most frequently annoying.

    I hear this way too often and I honestly don’t understand it.

    If you already indent correctly (go one unit deeper in a sub-block, one unit shallower when the block ends — and unit is whatever, be it a tab or several spaces, as long as it’s consistent), you won’t even notice the language relies on indentation.

    And I sure as hell hope you people indent properly in your non-python code too, already.


    That said, Python annoyed me with one thing that Perl — thankfully — doesn’t: run-time errors. Everything you can think of, is going to bite you during run. There’s no strict mode, no nothing to guard you against typos and such. Perl will very happily rattle its chains about stupid things that Python will remain completely oblivious about until you run into it while the code is in motion.

      I hear this way too often and I honestly don’t understand it.

      If you already indent correctly (go one unit deeper in a sub-block, one unit shallower when the block ends — and unit is whatever, be it a tab or several spaces, as long as it’s consistent), you won’t even notice the language relies on indentation.

      Look around at my code here and you'll see that I am very consistent -- almost anal -- about indentation in my code be it Perl, C whatever. But when I wrote python, it was just to damn easy to end up with:

      	stuff here
       	more stuff here
      

      Looks consistent, but is invisibly different. And that is puerile, pathetic and it f'ing annoys me. Frequently.

      And quite frankly I don't give a flying fig whether you "hear this way too often". If you don't wanna "hear" it, don't read it.


      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.

        Gosh, chill... didn’t mean to direct it at you in particular, but there’s simply been plenty of times I’ve heard it and I felt I’d say something about it.

        I’m almost exclusively a Perl user, but I’ve spent a few years doing KDE3 stuff in Python, and I guess I just feel weird when people find the white-space thing odd while it felt pretty much natural for me simply because it’s merely about making proper indentation a rule. (Heh, now that I think of it, that even fits in the Zen of Python, “there should be one — and preferably only one — obvious way to do it”)

Re^4: I want you to convince me to learn Perl
by soonix (Canon) on Sep 25, 2013 at 10:01 UTC
    yep, that's what I meant with "more differences than that". OTOH, wether something is annoying (and how much so), very often is influenced by what you have been using before, or what you are used to. E.g. I had seldom need for anonymous subs, so didn't miss multiline ones :-)
      I had seldom need for anonymous subs, so didn't miss multiline ones :-)

      You've never spread a sort block or map block or grep block over two or three lines?


      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.

        something like this? (excerpt from App::tkiv)

        my @img = map { $_->[0] } sort { $tsort{$Option{thumbsorting}}->() } map { my $seq = m/(\d+)/ ? $1 : 0; [ $_, $seq, (stat "$Idir/$_")[7,9], lc $_, rand 1 ] } grep { my $if = "$Idir/$_"; # Sanity check. Minimal image size 100 my $s = -s $if; # Skip MacOS working copies $if =~ s{/\._([^/]+)$}{/$1} && -s $if and $s = 0; $s and $s > 100; } # convert can't deal with .ico files (yet) # Tk can deal with Tiff/NEF as of 804.027_501 with Tk::TIFF grep m/\.(jpe?g|gif|x[pb]m|png|bmp|tiff?|nef)$/i => readdir +IDIR;

        Enjoy, Have FUN! H.Merijn
        See, those little helpers are our friends. Don't good friends deserve a name? :-)