Beefy Boxes and Bandwidth Generously Provided by pair Networks
XP is just a number
 
PerlMonks  

Re^2: RFC: Lexical Fatal.pm for Perl 5.10

by pjf (Curate)
on Mar 09, 2008 at 08:26 UTC ( [id://673072]=note: print w/replies, xml ) Need Help??


in reply to Re: RFC: Lexical Fatal.pm for Perl 5.10
in thread RFC: Lexical Fatal.pm for Perl 5.10

why not just make this a patch for Fatal triggered by an option on the use line

This is an excellent idea, and one I really should have considered and mentioned in my original post. I'm very happy with the idea of a patch to Fatal; it keeps everything together, and it certainly simplifies the code.

Downsides of patching Fatal are:

  • We'd be changing the behaviour of a core module, which means waiting until 5.10.1 before it's deployed, or making Fatal dual-lifed (core + CPAN).
  • I'd need to get sign-off from p5p, Lionel, or both. That shouldn't be a problem for a good idea, but it does have additional administrative overhead.
  • We're altering the interface of a very well-known core module to do something that it's never done before. There may be surprises there.
  • The calling syntax doesn't look like a pragma, but the more I look at it the less I mind. Using :lexical I hope makes it pretty obvious what's going on.

The advantages are that it goes in the core for everyone to enjoy, my ability to reuse code in Fatal becomes much much easier, and the functionality goes in the place where I imagine most people will expect it to be.

I'll open discussions with p5p to see their thoughts. Of course, I still very much appreciate feedback on the original proposal as well.

Many thanks,

Replies are listed 'Best First'.
Re^3: RFC: Lexical Fatal.pm for Perl 5.10
by Smylers (Pilgrim) on Mar 10, 2008 at 11:15 UTC
    I'm very happy with the idea of a patch to Fatal;

    That would be great, but failing that I think it'd be best to have a name which immediately suggests “like Fatal but works lexically”, such as Fatal::Lexical.

    Otherwise if we have, say, both Fatal and Lethal, there's nothing indicating which name has which behaviour; it seems arbitrary to anybody who doesn't already know.

Log In?
Username:
Password:

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

How do I use this?Last hourOther CB clients
Other Users?
Others learning in the Monastery: (5)
As of 2024-03-29 01:01 GMT
Sections?
Information?
Find Nodes?
Leftovers?
    Voting Booth?

    No recent polls found