Damian Conway writes:

 > 
 >    given baz(@args) { return $_ when defined }
 >    given baz(@args) { return $_ when $_ > 0 }
 >    # etc.
 > 

since we have 2 forms of "return" -- "return" and "leave" , may be we
can make "return" also to be a topicalizer for the rest of experssion
, and then :


return baz(@args) when $_ $_ > 0 ; 
return baz(@args) when defined  ; 
return baz(@args) when true ; 

but then inside given we will have to use "leave" : 

given $x { 
      leave  baz(@arg) when 5 # compare with $x 
      return bar(@arg) when 5 # compare with rezult of bar(@arg) 
}

or maybe we have to have anothre name for  return which also
topicalize. 

arcadi 
   
      

Reply via email to