[Tokyo-pm] Re: これはどう動くの?

Shinya Hayakawa tetryl @ tokyoprogrammer.com
2004年 8月 26日 (木) 21:12:14 CDT


早川です。

下のスレッドとLarryの投稿からすると、評価の順序は未定義なのでしょうか。
http://groups.google.com/groups?threadm=20030830171542.5579.qmail@plover.com
http://groups.google.com/groups?threadm=20030301172639.GA29036%40wall.org

ドキュメントとしては見つけられませんでした。
家に帰ったらラクダ本を見てみます。

On 2004 8月 27 金曜日 2:57 午前, Kazumasa Utashiro wrote:
> > では同一statementで@_の内容を変更していること。shiftと@_とどっちが先に評価されるかというのはCでは未定義なんだよね(K&R
> > pp.
> > 52)。perlでも明示的に定義はしてなかったように思うが、今のところどのplatformでもshiftの方が先に評価されるみたい。だけどCは
> > そうは行かない。
>
> Perl の設計方針としては定義されていましたよ。今でも perlfaq8(1) には、
>
>   You'll also see code that does this without a temporary variable,
>   as in
>
>       select((select(DEV), $| = 1)[0]);
>
> という常套句についての記述があるし、このコードが期待通りに動くことは、
> 少くとも version 2 の頃から保証されていたはずです。
>
> 探せば、どこかにドキュメントされているだろうと思うし、もしなければドキュ
> メントの不備なんじゃないですかね。

-- 
Shinya Hayakawa
hayakawa at livedoor.jp



Tokyo-pm メーリングリストの案内