Beefy Boxes and Bandwidth Generously Provided by pair Networks
Problems? Is your data what you think it is?
 
PerlMonks  

Re^3: I want you to convince me to learn Perl

by BrowserUk (Pope)
on Sep 25, 2013 at 08:44 UTC ( #1055636=note: print w/ replies, xml ) Need Help??


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:

  • Scoping is weird.
  • Documentation is crap.
  • Library (dis)organisation.
  • colons; thus the lack of multiline anonymous subs.
  • The general lack of coherence.

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
Re^4: I want you to convince me to learn Perl
by soonix (Curate) 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? :-)
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Ē)

Log In?
Username:
Password:

What's my password?
Create A New User
Node Status?
node history
Node Type: note [id://1055636]
help
Chatterbox?
and the web crawler heard nothing...

How do I use this? | Other CB clients
Other Users?
Others about the Monastery: (3)
As of 2014-09-21 01:20 GMT
Sections?
Information?
Find Nodes?
Leftovers?
    Voting Booth?

    How do you remember the number of days in each month?











    Results (165 votes), past polls