--- Sean O'Rourke <[EMAIL PROTECTED]> wrote:
> On Sat, 18 Jan 2003, Michael Lazzaro wrote:
> > So 'if' and friends are just (native) subroutines with prototypes like:
> >
> >    sub if (bool $c, Code $if_block) {...};
> 
> IIRC it's not that pretty, unfortunately, if you want to support this:
> 
>     if $test1 {
>       # blah
>     } elsunless $test2 {
>       # ...
>     }
> 
> since that gets parsed as
> 
>     if($test1, { ... }) # aiee: too many arguments to "if"
> 
> One possible solution would be to say that there's an implicit "whatever
> we need" after a closed curly.  In that case there are two ways to go:
> (1) we can define things like "if" to be statements rather than
> expressions (a la C), and closed-curlies as the last arguments of
> "statement-like" functions can always have an implicit ";"; or (2) we can
> say that "}" results in an implicit ";" whenever we're at the end of an
> argument list and see a term rather than an operator.  I think we turned
> up some nasty ambiguities with (2) last time we discussed this.  It would
> certainly wreak havoc with unary minus.
> 
> The other way is the "newline after curly" rule, which has a foul taste
> for those of us who cuddle our ifs.
> 
> /s
> 

Or we could just make if/unless/elsif/else special keywords. Not everything
needs to be a function.

__________________________________________________
Do you Yahoo!?
Yahoo! Mail Plus - Powerful. Affordable. Sign up now.
http://mailplus.yahoo.com

Reply via email to