Sure ... let's take an example where $abutton is a gtk button , $a its label , $bbutton if it exists a button from the same button group . ... #depending on the circumstances @args is either equal to #($a) or ($a,$bbutton) Make_Button($abutton,@args); ... sub Make_Button { my ($aa,@bb)=@_; $aa = new Gtk::RadioButton(here must come either $a or $a,$bbutton); } #end of script The syntax is very rigid , how do i manage to have the equivalent of $button = new Gtk::RadioButton($a, $bbutton); within the sub , and starting from @bb Sorry for the confusion , maybe it's confusing because i see a problem where there's none ( but a mere $aa = new Gtk::RadioButton(@bb) within the sub doesn't work so ... P.S.: i pretty new , can you tell me where this message is visible ? i have to pass through my home node to see it ...