On 2010-07-31, at 2:00 pm, TSa (Thomas Sandlaß) wrote:
> On Saturday, 31. July 2010 18:56:47 David Green wrote:
>>   given $who-knows-what {
>>     when True { say "It's a true thing!" }
#      ^--oops, this still shouldn't come first!
>>     when 42 { say "It's numbery!" }
>>     whenever timeout() { say "Who cares what you say, time's up!" }
>>     whenever $override { say "Whatever, switching to automatic override" }
>>   }
> 
> Am I getting your intention to be that when honors the given and whenever 
> just checks truth? Couldn't we use if for this? That would avoid the new 
> keyword.

Right; except that "whenever" still breaks out, unlike "if".  I like having a 
new keyword because it makes it perfectly clear that "whenever $foo" does not 
mean the same thing as "when $foo" (though it suggests something related by 
having "when" in the name).  

However, as suggested in my previous message, we could also distinguish them 
with something like "when" vs. "when:".  The colon there isn't quite a new 
keyword, but it still is something to make the distinction visible.  Plus it 
allows us to extend the same useful behaviour to "if" vs "if:".


-David

Reply via email to