From: nobu.nakada@... Date: 2002-02-13T09:49:53+09:00 Subject: [ruby-list:33874] Re: 変数の宣言 なかだです。 At Tue, 12 Feb 2002 10:59:05 +0900, shudo@computer.org wrote: > > Javaはコンパイルと実行が分かれてるので、あらかじめいろいろやっ > > ておけますから。コンパイルも実行時間に含まれてしまうスクリプト > > 系では辛いでしょう。 > > 解析にかかる時間 (オーダ) がメリットに比べて小さければ、 > 導入を検討してもいいんじゃないかと思います。 > (この件の導入/却下について意見はないんですが) > > スクリプト言語だから…と切り捨てるのはもったいない気がします。 切捨ててるわけではないですが、どの程度のメリットがあるのかよく 分からなかったもので。これはパーサで解析できるので、実行時のコ ストは大したことないです。 -wで警告を出すようにしてみたパッチです。 試してみて気づいたのですが、こういうのは今の1.7ではエラー(正確 にはメソッドを探そうとしてる)になります。 a &&= a b ||= b c += c 一貫性の点からすれば、単純な代入でも同じようにしたほうがいいと 思います。 > Java だって実行時に Java バイトコード → ネイティブコード > っていうコンパイルはするのだし、 > その上で処理にかかる時間を小さくする工夫をしてるわけです。 JITとかVMとかの話になるとまた違って来ると思うので、それはそれと して。 > 「スクリプト言語」って何?と常々考えてます。 > 例えば、次のようなスクリプトを用意して、 > 「C言語はスクリプト言語でなのでアル!」と主張したら、 > どんな反論があり得るでしょうか。 > > #!/bin/sh > cc -o ./$1.out $1 > exec ./$1.out Perlのinline module(だったかな?)みたいな:-)。 > ソースコードをそのまま実行に移せる、という性質は、 > どうもスクリプト言語の本質的な部分ではないと思うのです。 言語自体の本質ではないですが、処理系としてはかなり影響の大きな 部分ではあると思います。 -- --- 僕の前にBugはない。 --- 僕の後ろにBugはできる。 中田 伸悦