Beefy Boxes and Bandwidth Generously Provided by pair Networks
go ahead... be a heretic
 
PerlMonks  

Re^4: Curious about Perl's strengths in 2018

by dave_the_m (Monsignor)
on Apr 15, 2018 at 22:57 UTC ( [id://1212954]=note: print w/replies, xml ) Need Help??


in reply to Re^3: Curious about Perl's strengths in 2018
in thread Curious about Perl's strengths in 2018

It doesn't make Perl's management look efficient
It's very little to do with management (efficient or otherwise), and mainly to do with lack of manpower. Specifically there's a whole bunch of stuff I am aware of that needs pinning down and then implementing, before signatures can become non-experimental.

As one example, consider the behaviour of @_ within the body of a signatured sub. Should it still contain the full argument list (but then you incur the cost of setting up and restoring @_ for each call), or be empty (you still have a setup/restore cost), or be untouched and still have the value it had before the current function was called? Should accessing / modifying @_ trigger a warning, or even be fatal? What happens when a function is called via the argless &foo; mechanism - for each of the combinations of caller/callee being an ordinary/signatured sub? If @_ isn't populated, how can the sub tell whether a particular arg got passed a real undef value or no value? Should the behaviour of @_ be controllable? If so, should that be via a pragma or some new syntax within the signature? (Those are all rhetorical questions - I don't want to get into a debate about signature semantics here.)

Until all that has been decided and implemented, we don't know how @_ will change, so can't mark it as non-experimental.

Deciding and implementing all that is currently in my balliwick, and I only have so much time.

Dave.

Replies are listed 'Best First'.
Re^5: Curious about Perl's strengths in 2018
by LanX (Saint) on Apr 16, 2018 at 00:22 UTC
    I agree it's complicated and respect your wish to not discuss semantics here.

    But that's not what I meant with management.

    Function signature would have a bigger positiv impact on beginners than our declarations or defined-or // operators (to name some very popular added features not talking about smart match ~~ )

    It doesn't seem like P5P (or whoever else has the final word) does strategical planning.

    I'm not attacking you or asking you to invest more.

    I'm just stating a lack of market thinking.

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

      It doesn't seem like P5P (or whoever else has the final word) does strategical planning.
      Well it doesn't really, because perl is almost entirely a volunteer effort. The pumping could decree that signatures is our highest priority, but if a volunteer decides that doing signatures is too big and complicated and scary and beyond their ability (and it will be but for a small handful of people) and instead it would be fun to implement defined-or, should the pumpkin fire that volunteer or accept the dor patch into core?

      Anyway we barely have the manpower to just fix existing bugs, without adding shiny new features.

      Dave.

        Hi Dave,

        Sorry, but calling function signatures a "shiny new feature" in 2018 is a bit weird.

        I think this view proves my point of a missing overall strategy.

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

Log In?
Username:
Password:

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

How do I use this?Last hourOther CB clients
Other Users?
Others chanting in the Monastery: (6)
As of 2024-03-28 20:06 GMT
Sections?
Information?
Find Nodes?
Leftovers?
    Voting Booth?

    No recent polls found