XP is just a number | |
PerlMonks |
Re^3: conditional catch-blocks 'try {} catch(COND) { }'by pryrt (Abbot) |
on Sep 20, 2021 at 13:56 UTC ( [id://11136873]=note: print w/replies, xml ) | Need Help?? |
>> there's the experimental "Try Catch Exception Handling" introduced in Perl v5.34
> And it's certainly not backwards compatible. Which is a general problem of most experimental features. Having a stable strategy which works with older Perls albeit slowly and nice and fast with newer once would facilitate the development and evalution of new features tremendously.
Which is why there is Feature::Compat::Try (FCT), which will choose between the v5.34 native implementation or the Syntax::Keyword::Try (SKT) implementation, which will mean you can write code in such a way that it is backwards compatible down to the v5.14 that SKT supports, using the same syntax on with newer and older versions of Perl. (If I've understood the docs correctly, SKT actually has additional syntax that isn't in the v5.34 native implementation, but the FCT wrapper only exposes the v5.34-compatible syntax. I think.)
Caveat: I haven't used that pair, because I am often on systems that only has v5.8, so I don't want to get in the habit of using a try/catch pair that's not compatible back that far. But I remembered having seen the FCT/SKT pair mentioned in some other recent thread, so it stuck in my head. So if v5.14 is backward-compatible enough for you, looking at FCT would be a good idea.
In Section
Seekers of Perl Wisdom
|
|