From: matz@... (Yukihiro Matsumoto) Date: 2000-01-12T17:18:37+09:00 Subject: [ruby-talk:01120] Re: The value of while... In message "[ruby-talk:01119] Re: The value of while..." on 00/01/12, Clemens Hintze writes: |> Hmm, but it's a attribute of the statement which cannot be treated by | ^^^^^^^^^ |Perhaps that is the reason of confusion, IMHO. 'while' should be |considered as statement, not as expression! Dave is right here, to be |orthogonal 'while' should also return a value as every expression do! In Ruby's syntax, statement is just a special case of a expression which cannot appear as a argument (e.g. multiple assignment). Currently, Ruby's expression may or may not return value. The parser raises error if the program is taking the value from an obvious non-value-returning expression. If every expression must have value by definition, it's OK for me to call non-value-returning expressions as statements, but must it? |> `break' returning is as interesting as `break' with the label to exit. |> I couldn't decide. | |What about to introduce both? :-)))) If you cannot decide ... take |both ;-)))) Taking that strategy, Ruby will grow into Perl sooner or later. We should think one step smarter. :-) matz.