On 17.06.2008 06:08, hakunin wrote:
> On Jun 16, 10:48 pm, Justin Collins <justincoll... / ucla.edu> wrote:

>> print(true && true)
>> print(true or true)
>> print(true || true)
>> print((true and true))
>> print((true or true))

> That makes sense, and yes, that I realized. In print() parenthesis are
> enclosing the args, whereas in print () parenthesis are affecting
> precedence of passed-in expression. However, from the usability
> perspective, isn't it against some basic nature laws to leave it like
> this?

There are no nature laws in IT.

> I would understand if print(true and return) was to be made
> possible, although it looks quite ugly. In this case - Ruby says "i
> don't need it, but I won't give it to you either!" - an error occurs,
> but no reason provided for this to be restricted.  If enclosed
> arguments can only either be replaced with args list, or with a high
> precedence expression (otherwise error), then why not allow arg-
> enclosing parenthesis to behave like precedence modifiers as well, so
> that expression inside them plays first?  Overall it seems to be only
> better for the elegance of code, and wouldn't hurt anyone. Unless I'm
> missing the rest of the iceberg.

Two remarks:

1. I was surprised of the error as well.  But

2. I cannot remember someone complaining about this.  So, although my 
memory may be failing me, for most it does not seem to be an issue.

Maybe it's simply a technical limitation of the parser.

Kind regards

	robert