Beefy Boxes and Bandwidth Generously Provided by pair Networks
Just another Perl shrine
 
PerlMonks  

Re: Modernizing the Postmodern Language?

by jcb (Priest)
on Jun 29, 2020 at 23:34 UTC ( #11118684=note: print w/replies, xml ) Need Help??


in reply to Modernizing the Postmodern Language?

If bareword filehandles no longer exist in Perl 7, how do you refer to STDOUT, or more commonly, STDERR, as in print STDERR "oops: ..."? Or, for that matter, STDIN, as in <STDIN>?

Is autoquoting here the token to the left of fat comma or is this the long-deprecated general bareword misfeature that use strict; has long disallowed?

And what is the supposed justification for removing heredocs?

Why is this starting to look like Perl6 all over again, just with a less-ambitious goal? Perl6/Raku at least had the excuse of targeting ahead-of-time compilation to machine code. What is the supposed benefit to Perl7?

Replies are listed 'Best First'.
Re^2: Modernizing the Postmodern Language?
by LanX (Cardinal) on Jun 30, 2020 at 00:02 UTC
    Sawyer gave two practically unrelated talks and you both are mixing them up.

    One about Perl 7 and one about what he wants to call "Standard Perl" a subset with BNF language definition, hence statically parsable by tools like Guacamole.

    He was clear about that "Standard Perl" is not related to "Perl 7"

    > If bareword filehandles no longer exist in Perl 7, how do you refer to STDOUT, or more commonly, STDERR, as in print STDERR "oops: ..."? Or, for that matter, STDIN, as in <STDIN>?

    They are excepted, kind of built-ins.

    I recommend watching those talks on YouTube before speculating and spreading rumors.

    And the user you are responding to is pretty unknown here and had only 2 posts so far, so I'd be really careful to rely on such sources.

    Cheers Rolf
    (addicted to the Perl Programming Language :)
    Wikisyntax for the Monastery

      The 1999 'postmodern' talk says: "Perl is humble. It doesn’t try to tell the programmer how to program. It lets the programmer decide what rules today, and what sucks. It doesn’t have any theoretical axes to grind." That's the Perl I want... not the Perl that says "your code will adhere to strict and warnings no matter what."

      I have not mixed up the "Guac" talk with the Perl7 talk, but I fear it has provided insight into what Sawyer thinks is good and not-so-good about Perl syntax, and I don't like what I heard. Especially on the eve of leading a set of breaking changes to the language, I don't like to hear the leader saying how much he never liked a lot of perl-unique quirks and then naming a severe subset "Standard Perl." Further, I prefer a leader with enough awareness to understand how confusing it will be to call something he produces "Standard Perl."

      Bareword filehandles are on the chopping block in the Perl 7 Announcement, and there it says except MAYBE the standard filehandles. I don't see how you can definitively tell people they are excepted like built-ins, unless you have more information. Strict and warnings are also discussed in the Perl 7 announcement. I did not mix anything up there.

      It is true I do not spend a lot of time participating on forums--my other post here was in 2016--, if that disqualifies my thoughts here so be it.

        G'day WaywardCode,

        '... "your code will adhere to strict and warnings no matter what."'

        My general recommendation is that you should start all code with those two pragmata. I see not having to always type them as a good thing.

        Having said that, the article to which you linked has a number of examples of no. I'm not aware of any reason why you couldn't use that on the rare occasions that you don't want those pragmata.

        I would strongly suggest that you only turn off parts of the functionality in a limited lexical scope. Perhaps something like:

        my @punctuation_chars; { no warnings 'qw'; @punctuation_chars = qw{. , ; :}; }

        — Ken

        > your code will adhere to strict and warnings no matter what."

        Again, they said that no strict and no warnings are still possible.

        The same for use v5.10.0

        So no "no matter what."

        If Perl 7 defaults help reducing the copy and paste boilerplate from Perl 4 I'm full for it.

        Guacamole is Sawyers private project, it'll have to prove itself.

        Disclaimer: I'm not involved in the decision making and have no behind the scene insight.

        Just interested in a fair and sober discussion.

        > if that disqualifies my thoughts here so be it.

        It doesn't disqualify you.

        One has to be aware that this board is full of trolls and sockpuppets.

        Considering the post history helps.

        You are speculating about insights into the "leader's" mind and intentions, but we have no insight into yours.

        Cheers Rolf
        (addicted to the Perl Programming Language :)
        Wikisyntax for the Monastery

      He was clear about that "Standard Perl" is not related to "Perl 7"
      I think everyone in this discussion is aware that this is officially the case, but the fact is that they are unavoidably connected in that Perl 7 and Standard Perl are both being driven by the same person. Don't forget that, in the Guac talk, Sawyer's clarification on this point was prompted by the moderator cutting in to tell him that the chat was filling up with people saying "OMG! The pumpking wants to gut Perl!!!"

      So, yes, it is clear and correct that Standard Perl is not the plan for what Perl 7 (or 8, or any future official release) is meant to look like... but they are both the products of the same mind. To the extent that Standard Perl accurately represents Sawyer's concept of what the Platonic Ideal of Perl might look like, it also shows where he would like to see the language one day go, even if he knows that others would not agree with or accept those changes. (And note that I'm not saying it's a 100% accurate representation of Sawyer's "Ideal Perl", but there is almost certainly some high degree of similarity between the two.)

      It's like a politician or a corporate leader expressing a personal opinion on a controversial topic. It's not the official position of their party or employer, but, despite that, it still reflects on the party/employer and (IMO, rightly) creates an impression that the party/employer at least accepts those views and may wish to unofficially further them, even if it doesn't openly endorse them.

        So what?

        Many pumpkins mused about function signatures in the past and nothing happened in 20 years.

        And the history of Perl has a long list of "pumpkins" who resigned.

        We should be glad to have someone who does the job and has the guts to offer visions.

        A BNF parsable Perl which can be enforced by pragma is a quality in itself many people want.

        Let history decide, not polemics.

        Cheers Rolf
        (addicted to the Perl Programming Language :)
        Wikisyntax for the Monastery

      They are excepted, kind of built-ins.

      That is really a huge wart, far worse than general bareword filehandles could ever be. You still have the syntax cases, except now they are special cases instead of instances of a general rule.

      And the user you are responding to is pretty unknown here and had only 2 posts so far, so I'd be really careful to rely on such sources.

      Duly noted, which is one of the reasons I am in no particular rush: if Perl7 does turn into Perl6 all over again, I am confident that it will end similarly, with Perl5 carrying on.

        Perl 7 will run on the same engine, just with other default pragmas.

        I asked explicitely.

        Compatibility to CPAN is paramount, P7 will have a compatibility flag.

        No relation to Raku.

        Cheers Rolf
        (addicted to the Perl Programming Language :)
        Wikisyntax for the Monastery

Log In?
Username:
Password:

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

How do I use this? | Other CB clients
Other Users?
Others chanting in the Monastery: (5)
As of 2020-08-09 12:18 GMT
Sections?
Information?
Find Nodes?
Leftovers?
    Voting Booth?
    Which rocket would you take to Mars?










    Results (54 votes). Check out past polls.

    Notices?