in reply to Should I use v5.10 because of named groups?

That's why I created Syntax::Construct. It makes it possible to state
use Syntax::Construct qw( ?<> );

I find it more user friendly, as neither the author nor the user need to remember which construct appeared in which version. Read the Description where I tried to explain my reasoning.

You can also use it just as a reference to see which version introduced what.

map{substr$_->[0],$_->[1]||0,1}[\*||{},3],[[]],[ref qr-1,-,-1],[{}],[sub{}^*ARGV,3]