From: Minero Aoki Date: 2000-02-23T20:06:22+09:00 Subject: [ruby-dev:9276] Re: ruby object あおきです。 In mail "[ruby-dev:9266] Re: ruby object" matz@netlab.co.jp (Yukihiro Matsumoto) wrote: > まつもと ゆきひろです > |では、インタプリタでなく「場」オブジェクトと見るとどうでしょう? > |$~ のようなものはコードの推移とともに移りかわってゆくフィールドの > |ようなものとみなせませんか? > > 見なせないことはないでしょうね。なんか関数型言語みたい。 > が、「その方が自然か」というのはまた別の問題です。 > > 私は現時点では > > |なんにしても、Regexp.post_match よりは current.post_match のほうが > |ちょっといいかなあと思います。 > > のような「ちょっといいかなあ」というのは感じてません。どっち > かっていうと「大差ないなあ」と思ってる方です。 うーむ、なるほど…。 残念ですがしょうがないです。他の手を考えます。 > |例外 > | $! $@ > > これは rescue の構文を拡張して例外を代入する左辺値を指定でき > るようにしようと考えています。しかし、文法が... > > rescue ScriptError => err > > とかか? うーん。 思いつくものだけ… メソッド風味 err = rescue( ArgumentError ) # 変 その逆 rescue ArgumentError(err) # やっぱり変 キーワード引数渡し風味 rescue ArgumentError:err # 意味不明 構文追加… rescue ArgumentError by err # VB を思いだしてしまった どれもいまいちな。 > |マッチ > | $+ $& $` $' $1,$2... $~ $= > > これは特に素晴らしいアイディアがあるわけではないのですが、$~ > が得られれば残りは得られるので、RegexpかMatchingDataのクラス > メソッドで与えれば良いかなと。 あれって、文字列を複製する必要はないんでしたっけ? (re.c を読んでいる…)ないんですね。それなら文句なしです。 > |文字列 > | $, $; > > これはなあ、どこに所属するのかなあ。 「使わないでください」ってお願いしておいて、 将来は ruby にフラグをつけないと抹消されてしまうというのは どうでしょう ^^;; (その逆の --no-builtin-gvar とか…) > |IO > | $/ $\ $. $< $> $_ > | $stdin $stdout $stderr $FILENAME > | (STDIN STDOUT STDERR ARGF) > > 定数まで削る気は無いです。あと挙がっている あ、はい。勇み足でした。 ぼくとしても定数は削ってほしいわけではなく、current にも欲しい というつもりでした。( current::ARGF = ::ARGF ) > | $? ENV > | $0 $* $$ $: $" $DEBUG $VERBOSE $KCODE(正規表現?) > | RUBY_VERSION RUBY_RELEASE_DATE RUBY_PLATFORM > > ですが、それぞれ悩ましくはありますねえ。RUBY_VERSIONとかは > 「場」オブジェクトとかに馴染むかもしれません。 モジュールにまとめるとしたらこっちのほうがその気になりますか? module Ruby とか。 ------------------------------------------------------------------- あおきみねろう