http://qs321.pair.com?node_id=1191233

Perl,

I love you and I miss you. Have been making some dough with Java for the past few years but I am returning to you with my new endeavour.

My time with Java has been a means to an end and I can now say, with a great degree of certainty, that there is no other language I would rather code with for the rest of my life.

With the same degree of certainty I can also say what a piece of crap Java is.

Can't wait to type your wonderful syntax again, and can't wait to learn 6.

Cya soon! ait

Replies are listed 'Best First'.
Re: Perl, I'm coming home...
by Discipulus (Canon) on May 25, 2017 at 20:36 UTC
    $title = join' ',$^X,$self->verb($self->pronoun,'be'),qr/co[md]ing/,'~ +'; while($sheep->return($fold)){ print "$sheep is returned from the kingdom of nouns.\n"; if ($sheep{pockets}=~s/$exotic_beans//r){ warn "$sheep needs some penance!\n"; $sheep->clean('cloister') for 1..42; } else{ eval{print "The compiler is near you again $sheep";} $sheep{pockets}=$@ if $@; } $all_monks->chorus("Welcome back $sheep!\n"); }

    PS for the corious..

    L*

    There are no rules, there are no thumbs..
    Reinvent the wheel, then learn The Wheel; may be one day you reinvent one of THE WHEELS.
Re: Perl, I'm coming home...
by chacham (Prior) on May 25, 2017 at 20:55 UTC

    making some dough with Java

    But perl is still your bread and butter...

      Yep. Always has and always will be.

Re: Perl, I'm coming home...
by HugoNo1 (Novice) on Sep 21, 2018 at 13:12 UTC

    I worked for many years with PHP and learned to live and succeed with its sometimes very "organic" structure and behaviour.

    Its philosophy on work with Strings and Arrays is:
    "We will copy safely everything, except in very special cases and only momentanely."
    - So that a Reference on a String becomes a String again if you dont watch after it.
    That results in that in Big abstracted Data Structures the Data gets copied again and once again.
    Which creates Big Server Load for large texts.

    Also assigning parts of Associative Array Trees would Copy the subbranch of the Tree.
    Which in Big Structures would result again in heavy in-memory copying.

    I found in Perl a Reference is always a Reference untill you dereference it.
    Some find the Syntax weird but I think when you get it right it does exactly what you expect it to do.
    It does not under the hood some hidden stuff which is not what you intended to happen!!

    my $sstr = "my string"; my $rsstr = \$sstr; print "org str '$sstr'; addr: '" . \$sstr . "'\n"; $sstr .= " + my string add"; print "rs 1 str '$sstr'; addr: '" . \$sstr . "'\n"; $$rsstr .= " + add to ref"; print "rs 2 str '$sstr'; ref: '" . $rsstr . "'; addr: '" . \$sstr . "' +\n";
    results in:
    org str 'my string'; addr: 'SCALAR(0x22e8af8)' rs 1 str 'my string + my string add'; addr: 'SCALAR(0x22e8af8)' rs 2 str 'my string + my string add + add to ref'; ref: 'SCALAR(0x22e8 +af8)'; addr: 'SCALAR(0x22e8af8)'

    When I assign a text to another text I still keep the same Address Space
    And the text is not copied in-memory somewhere else, or destroyed and recreated! ... Hello Python!!

    At first I felt quite bewildered by the Function Parameter Handling ...
    but when you really get to dominate it it unleashes the Power of Real Polymorphism
    wantarray() is another powerful tool for Polymorphism.
    It gives you the right thing at the right time.

    So its a really Powerful Tool to build beautiful stuff in the hands of a skilful programmer!!
    So I feel also as finally being understood and given a Home.