Beefy Boxes and Bandwidth Generously Provided by pair Networks
Think about Loose Coupling

Comment on

( #3333=superdoc: print w/replies, xml ) Need Help??

Your points:

...parrot seems frivolous and unnecessary

I am glad we're making a platform that can run different languages. Parrot has the potential to pull much of the dynamically typed language community together and can give it a solid footing. If there is a great Python library that I want to use, I can run it through Parrot and use it from Perl without much effort. You can also use Parrot assembly directly from Perl and get the performance benefits without being forced to learn C. And the JIT compiler will be a godsend for many programmers. It will be wonderful to compile and distribute an actual application, rather than many of the hodgepodges that we have now.

the use of . instead of -> and _ instead of . utterly disgusts me.

The underscore is there because the dot operator no longer represents concatenation. As for the dot operator, once I became used to the change, I was happy for it. First of all, it represents less punctuation. Whether justified or not, many people gripe about Perl's excessive and sometimes confusing punctuation and this will help to alleviate that concern. Of course, if one is going to reduce punctuation, one should do it for commonly done things. The arrow operator is one of those things and since everyone else already uses the dot, it's a pretty natural conversion.

Incidentally, take a look at some VB6 or VBScript code and compare it to the code written for Win32 modules. Quite often, lines of code are identical, except for the difference between the arrow and the dot. This makes less of a barrier for people coming to Perl. We shouldn't be here to be elitist. We should be here because Perl Gets Things Done. If switching from an arrow to a dot improves that and makes Perl seem less intimidating, so be it.

Returning to the punctuation problem, the shift from arrow to dot is part of the overall plan to extend Perl yet make it easier to learn. This has led to standardizing the sigils of variables so that they denote type instead of what the variable is returning. For instance:

# Perl 6 (possible typos ahead) my @array = qw(foo bar baz this that the other thing); my $word = @array[0]; # a single value my @words = @array[5,6,7]; # an array slice

The above syntax is already what many new programmers expect out of Perl5. We have to violate their expectations to explain the difference between accessing a single array value or an array slice. Further, the following monstrosities in Perl 5 can hopefully go away:

@_[1..$#_]; # all but the first element of an argument list @{$var}{qw(foo bar)}; # a hash slice of a hash reference

(out of time and need to get to work ... I'm sure others can come up with better examples and show how they'll look in Perl6)


New address of my CGI Course.
Silence is Evil (feel free to copy and distribute widely - note copyright text)

In reply to Re: Re: NO PERL 6 by Ovid
in thread NO PERL 6 by batkins

Use:  <p> text here (a paragraph) </p>
and:  <code> code here </code>
to format your post; it's "PerlMonks-approved HTML":

  • Posts are HTML formatted. Put <p> </p> tags around your paragraphs. Put <code> </code> tags around your code and data!
  • Titles consisting of a single word are discouraged, and in most cases are disallowed outright.
  • Read Where should I post X? if you're not absolutely sure you're posting in the right place.
  • Please read these before you post! —
  • Posts may use any of the Perl Monks Approved HTML tags:
    a, abbr, b, big, blockquote, br, caption, center, col, colgroup, dd, del, div, dl, dt, em, font, h1, h2, h3, h4, h5, h6, hr, i, ins, li, ol, p, pre, readmore, small, span, spoiler, strike, strong, sub, sup, table, tbody, td, tfoot, th, thead, tr, tt, u, ul, wbr
  • You may need to use entities for some characters, as follows. (Exception: Within code tags, you can put the characters literally.)
            For:     Use:
    & &amp;
    < &lt;
    > &gt;
    [ &#91;
    ] &#93;
  • Link using PerlMonks shortcuts! What shortcuts can I use for linking?
  • See Writeup Formatting Tips and other pages linked from there for more info.
  • Log In?

    What's my password?
    Create A New User
    [choroba]: What do you mean by "anchors"?
    [erix]: anchors
    [erix]: I have figured it out. I actually constructed them correctly but used a faulty url *headdesk*
    [erix]: ( you use anchors to jump to via a #-suffix to the url -- I am sure you know )
    [choroba]: ah, these

    How do I use this? | Other CB clients
    Other Users?
    Others examining the Monastery: (6)
    As of 2018-06-19 12:41 GMT
    Find Nodes?
      Voting Booth?
      Should cpanminus be part of the standard Perl release?

      Results (113 votes). Check out past polls.