[#1026] Is this a bug? — Dave Thomas <Dave@...>
18 messages
2000/01/03
[#1053] rand() / drand48() — ts <decoux@...>
11 messages
2000/01/05
[#1055] Re: rand() / drand48()
— matz@... (Yukihiro Matsumoto)
2000/01/05
[#1061] Re: rand() / drand48()
— gotoken@... (GOTO Kentaro)
2000/01/07
Hi,
[#1067] Here docs not skipping leading spaces — Dave Thomas <Dave@...>
5 messages
2000/01/08
[#1083] YADQ (Yet Another Dumb Question) — Dave Thomas <Dave@...>
12 messages
2000/01/10
[#1084] Infinite loop — Dave Thomas <Dave@...>
17 messages
2000/01/11
[#1104] The value of while... — Dave Thomas <Dave@...>
24 messages
2000/01/11
[#1114] Re: The value of while...
— Dave Thomas <Dave@...>
2000/01/12
matz@netlab.co.jp (Yukihiro Matsumoto) writes:
[#1128] Re: The value of while... — David Suarez de Lis <excalibor@...>
Hi all,
1 message
2000/01/12
[#1133] Re: Class variables... — David Suarez de Lis <excalibor@...>
Hi there,
2 messages
2000/01/12
[#1158] Is this expected behavior? — Dave Thomas <Dave@...>
6 messages
2000/01/21
[#1172] Re: Possible bug in ruby-man-1.4 — Huayin Wang <wang@...>
> |Well, I guess it comes down to what you mean by an integer
10 messages
2000/01/24
[#1177] Re: Possible bug in ruby-man-1.4
— Dave Thomas <Dave@...>
2000/01/25
matz@netlab.co.jp (Yukihiro Matsumoto) writes:
[#1188] Enumerable and index — Dave Thomas <Dave@...>
5 messages
2000/01/27
[#1193] Semantics of chomp/chop — Dave Thomas <Dave@...>
7 messages
2000/01/28
[#1197] Question about 'open' — Dave Thomas <Dave@...>
8 messages
2000/01/30
[ruby-talk:01138] Re: The value of while...
From:
Dave Thomas <Dave@...>
Date:
2000-01-13 17:54:12 UTC
List:
ruby-talk #1138
matz@netlab.co.jp (Yukihiro Matsumoto) writes: > return break next redo retry while until class module def > > Among them, expressions to switch control flow (return, break, next, > redo, retry) cannot have value anyway. I'd suggest that return's value is the value you're returning, and that break should be altered to accept an argument, which becomes its value (see below). Ah ha! Do this, and we actually simplify things. Right now, a method is defined to return either the value of the last expression executed _or_ the value given to 'return'. Change 'return' so that its value is its argument, and the value of a method becomes simply 'the value of the last statement executed'. > I can't think of proper value for `while' and `until', unless `break > with value' is introduced. pending. The value of 'while' and 'until' could be the value of the last expression executed (just like with methods). If 'break' returns a value, then that's returned. > `def' is more difficult, because of implementation reason, we cannot > have so-called unbound method object in Ruby. A Method object is a > method bound to the certain receiver. It had been discussed in > Japanese speaking list, but we couldn't find any good idea. For class methods/singletons I _think_ you can return a meaningful Method object. I'm not sure I see any real reason to do this, but for normal instance methods there an analogy with a block and a Proc object. 'def' could return an unbound method, which you have to provide a binding to before evaluating. That binding would then produce a Method, in the same wy that binding a bock produces a Proc. However, that would mean a new method in Object and a new internal type, and I'm not sure that its worth it. Regards Dave